yield, IEnumerator and the iterator pattern in C#

I have been programming in C# for around ten years now. Before that, I worked in C++. My education was games-focused and at the time, C++ was pretty much the only serious option for programming games. Some poor souls still insisted that C was still the better choice. I thought they were insane at the…