Следующее нормально: try { Console.WriteLine("Before"); yield return 1; Console.WriteLine("After"); } finally { Console.WriteLine("Done"); } finallyБлок работает , когда все , что закончил выполнение ( IEnumerator<T>опоры , IDisposableчтобы обеспечить способ обеспечить это даже тогда , когда...