Como e quando usar 'async' e 'aguardar'

Do meu entendimento, uma das principais coisas que async e await do is to make code easy to write and read-but is using ... thingAsync() { // is this executed on a background thread? System.Threading.Thread.Sleep(5000); return 1; }

Como escrever um Sub-in Async VB.NET?

Public Class LoginManager Implements ILoginManager Private ReadOnly _iLoginRepository As ILoginRepository Pu ... acredito que tem algo a ver com a interface e não torná-lo um método async como em C#, Mas eu sou incapaz de fazer isso.