Resharper is a fabulous tool for Visual Studio and is my HUD for what’s going on. It helps me see things I don’t always notice. For example, using an IEnumerable multiple times will have blue squiggles and saw “Possible multiple enumeration of IEnumerable”. The power and pitfalls of LINQ and deferred execution! To avoid the multiple enumeration I usually .ToList() the enumerable.
A colleague suggested using IReadOnlyList<T> which was added to .Net 4.5 in 2012 instead of IEnumerable<T> for parameters to methods. Then I no longer have to .ToList in the method, but the calling code will be in charge of doing so.