Tach!
Da sieht so aus als würde static IEnumerable<int> Foo() bei jedem Zugriff aufgerufen. Ein Horror! Das Verhalten könnte aber in der IEnumerable-Schnittstelle begründet sein.
Horror? Das ist das übliche Verhalten eines Generators. Den und das Schlüsselwort yield gibt es auch in anderen Sprachen.
dedlfix.