Guia de programação assíncrona em C#

“A programação assíncrona existe há vários anos na plataforma .NET, mas historicamente tem sido muito difícil de fazer bem. Desde a introdução de async/await em C# 5, a programação assíncrona se tornou popular. Frameworks modernos (como ASP.NET Core) são totalmente assíncronos e é muito difícil evitar a palavra-chave async ao escrever serviços web. Como resultado, tem havido muita confusão sobre as melhores práticas para async e como usá-lo corretamente. Esta seção tentará estabelecer algumas orientações com exemplos de padrões bons e ruins de como escrever código assíncrono.” (por David Fowler)
Acesse: 🔗C# Async Guidance (inglês)