Curated resource links I've collected while doing asynchronous programming in .NET. Some of them were very useful to me during my learning path and hopefully, they will help other software developers. Suggestions are welcome.
- Six Essential Tips for Async by Lucian Wischik (2013)
I usually prefer reading blogs or books rather than watching videos but in this case, they are absolutely worth in order to understand graphically the asynchronous program flow with await/async.
-
Async Guidance by David Fowler
Provides excellent small code samples of good and bad patterns -
Async Anti-Patterns by Mark Heath
Enumerates some of the most common mistakes you will probably find or even code yourself while doing Asynchronous programming. -
Stephen Cleary
Stephen Cleary is an expert in asynchronous programming since 2012. He has written many posts addressing many issues. Keep in mind TAP and TPL libraries changed a lot through the years so maybe you will find solutions for problems that are already solved in the framework. -
Do not await what does not need to be awaited by Jiří Činčura
A detailed post explaining some specific cases where you can use Task without await. It doesn't really make a big difference but if you are able to understand the discussion it's probably a sign that you're on the right track with async! -
Producer/consumer pipelines with System.Threading.Channels by Maarten Balliauw
A nice post with a simple sample code that goes from async to parallel async to pipelines. Explaining the pros of that code evolution. It also includes a list of great links to get started with Pipelines. -
How Async/Await Really Works in C# by Stephen Toub
Interesting blog post published March 16th, 2023
-
C# 7.0 in a Nutshell by Joseph and Ben Albahari
Chapter 14 - Concurrency and Asynchrony provides in depth knowledge of Threading/Tasks and Obsolete Patterns like APM, EAP, and BackgroundWorker -
C# in Depth by Jon Skeet
Chapters 5 and 6 on asynchronous programming are very well explained and worth reading
- I'm currently preparing some small samples about practical uses of async/await in Desktop and Web Applications for a Meetup and will, later on, add them to this repository
- Why your ASP.NET Core application won't scale (Feb 2019)
David Fowler and Damian Edwards demonstrate the importance of correctly using async/await in ASP.NET Core - The promise of an async future awaits by Bill Wagner (Feb 2019)
Nice talk given in NDC London