O padrão Task-based Asynchronous Pattern (TAP) corresponde a uma evolução do padrão Event-based Asynchronous Pattern (EAP) para programação assíncrona na plataforma .NET. O suporte a funções assíncronas será incorporado à linguagem C# na versão 5. Para isto, serão introduzidas duas novas palavras-chaves na linguagem: async e await.