Введение в LINQ и функции коллекций в C#
Списки, массивы и другие коллекции часто нужно обрабатывать одинаковыми шагами: найти элемент, отобрать подходящие, посчитать итог. Писать такой код с нуля в каждой программе долго и легко ошибиться.
В .NET для типичных шагов над коллекциями есть готовые функции LINQ to Objects. Их вызывают у массива, списка или другого набора элементов. Многие операции возвращают новый результат, а не переписывают исходный набор на месте.
Подходящую функцию ищут в справочнике по LINQ: там указаны имя, параметры, возвращаемый тип и примеры вызова. В учебных уроках раздела перед задачами стоят ссылки на нужные страницы справочника - удобно открыть описание, сверить сигнатуру и вернуться к заданию.