.NET/C#: some starting posts on the `async` and `await` keywords
Posted by jpluimers on 2014/12/02
Last year’s summer, I posted some .NET/C#: some starting posts on the yield keyword and mentioned that async and await might be the most complicated compiler transform.
So here are some posts to learn more about async and await:
- C# Async: What is it, and how does it work?.
My initial reference from Clive Tong, one of the Reflector team members at Red Gate. - c# – Is Async await keyword equivalent to a ContinueWith lambda? – Stack Overflow.
Great starting question and answers, especially since the answers point to some very nice posts from Lucian Wischik, Eric Lippert, and Jon Skeet. - Awaiting Socket Operations – .NET Parallel Programming – Site Home – MSDN Blogs.
- Eduasync – Jon Skeet: Coding Blog.
Must read series on Async.
The state machine transformation:
- Async CTP Refresh – design changes – Lucian’s VBlog – Site Home – MSDN Blogs.
- Async Await and the Generated StateMachine – CodeProject.
- Async in C# 5.0 > 14. The Async Compiler Transform—in Depth : Safari Books Online.
- Async in C# 5.0 – Alex Davies – Google Books.
Best Practices:
- Best Practices for c# async/await | Zeros, Ones and a Few Twos.
- Async in C# and F#: Asynchronous gotchas in C# | Blog | TomasP.Net.
- Async/Await – Best Practices in Asynchronous Programming.
Misc.:
- Asynchrony in C# 5, Part One – Fabulous Adventures In Coding – Site Home – MSDN Blogs.
- c# – Transform IEnumerable asynchronously by awaiting each task – Stack Overflow.
- C# Feature Dossier: Tasks Based Asynchrony with Async and Await | MarkedUp – Analytics and Insights for Windows 8.
- Asynchronous Programming with Async and Await (C# and Visual Basic).
- An Async Primer.
- Async/Await FAQ – .NET Parallel Programming – Site Home – MSDN Blogs.
Don’t forget you need C# 5 for all this (:
--jeroen
via: .NET/C#: some starting posts on the yield keyword. « The Wiert Corner – irregular stream of stuff.






Rick said
Cool stuff. How’s everything going? I’ll ‘await’ your response. :-)