static void Test(int count) { Foo foo = new Foo(); int chk; Stopwatch watch = Stopwatch.StartNew(); chk = 0; for (int i = 0; i < count; i++) { foreach (int j in foo.Basic()) { chk += j; } } watch.Stop(); Console.WriteLine("Basic: " + watch.ElapsedMilliseconds + "ms - " + chk); watch = Stopwatch.StartNew(); chk = 0; for (int i = 0; i < count; i++) { foreach (int j in foo.Bespoke()) { chk += j; } } watch.Stop(); Console.WriteLine("Bespoke: " + watch.ElapsedMilliseconds + "ms - " + chk); }