Glad to see this Dart feature appearing in C#:
Asynchronous Streams
Now you can "yield" Task<T> (~ Future<T> in Dart) and construct LINQ chains in an asynchronous fashion.
I hope it streamlines reactive programming greatly.[1] Dart - Asynchronous Programming: Streams https://www.dartlang.org/tutorials/language/streams
[2] .NET Futures: Asynchronous Streams https://www.infoq.com/news/2017/05/async-streams