Если мы предположим, что в обоих случаях вы используете методы расширения, предоставляемые статическим классом Enumerable
, тогда вам будет трудно измерить разницу между ними.
Чем больше формы ...
myCollection.Where(...).FirstOrDefault()
... будет (технически) производить больше активности памяти (создание посредническую итератора для обработки пункта Where()
) и привлечь еще несколько циклов обработки.
Дело в том, что эти итераторах ленивого - оговорка Where()
не будет идти Весело весь список оценки предиката, то это будет только проверить, как много элементов, необходимых, чтобы найти один, чтобы пройти.