はじめに yield returnとは なかなか一言での説明が難しいですね。 なにか複数あるものを1個ずつ取得しようとする処理をreturnを使って書けようにするキーワード、といったところでしょうか。 LINQのWhereやOrderByなどの中間操作の内部処理等で多く使用されています。 サンプルコードをみてみましょう。 static void Main(string[] args) { Console.WriteLine("Start"); foreach (var x in YieldSample()) { Console.WriteLine($"loop {x}"); } Console.WriteLine("End"); } static IEnumerable<int> YieldSample() { Console.WriteLine("yield return 1"); yi