Linq на IEnumerable
использует Linq to Objects - Linq на IQueryable
использует то, что поставщик запросов реализовал для стандартных операторов запросов.
Для ORM, таких как Linq to SQL и Entity Framework, т. Е. Это означает, что преобразование вашего запроса Linq в соответствующий запрос SQL в базе данных - фильтрация и т. Д. В базе данных гораздо предпочтительнее, чем перемещение всех этих данных в память, поскольку это будет намного лучше производительность.