Самым большим отличием для меня является то, что .FindAll также доступен в .Net 2.0. У меня не всегда есть роскошь программировать на .Net 3.5, поэтому я стараюсь запомнить «родные» методы универсальных коллекций .Net.
Несколько раз случалось, что я сам реализовывал уже доступный метод List, потому что не мог связать его.
В этом случае мне удобно то, что при использовании VS2008 я могу использовать вывод типа и синтаксис лямбда-выражения. Это функции компилятора, а не фреймворка. Это означает, что я могу написать это и при этом оставаться в .Net 2.0:
var myOddNums = myNums.FindAll(n => n%2==1);
Но если у вас есть LINQ, важно сохранять разницу между отложенным и немедленным выполнением.