Use GroupBy() with ToLookup() for Faster Lookups
GroupBy() is powerful but can be inefficient for multiple lookups. ToLookup() offers better performance for repeated accesses.
Problem:
var groups = numbers.GroupBy(n => n % 2); var evens = groups.First(g => g.Key == 0); //This iterates multiple times.
Solution:
var lookup = numbers.ToLookup(n => n % 2); var evens = lookup[0];This avoids unnecessary iterations.