Нет, на самом деле, если вы используете LINQ to SQL, производительность будет немного хуже, поскольку LINQ, в конце концов, является дополнительным слоем поверх стека ado.net.
если вы используете linq поверх объектов. есть оптимизация, выполненная linq, наиболее важной из которых является «Yield», которая начинает генерировать результаты из IEnumerable по мере его генерирования. это лучше, чем стандартный подход, который должен ждать, пока список будет заполнен и возвращен функцией, чтобы перебрать его.