Assuming we're talking about LinqToObjects (obviously LinqToSql, LinqToWhatever have their own rules), the former will be so slightly slower since a new iterator needs to be created, but it is incredibly unlikely that you will notice the difference. As for the number of comparisons and the number of items examined, the time during which they will be performed will be almost identical.
If you are worried that this will not happen, the .Where statement will filter the list by n items, and .FirstOfDefault will select the first one from the filtered list. Both sequences will be shorted correctly.
tnyfst
source share