Hola,
Para que un metodo sea asincrono ponemos Asyinc, por ejemplo: Private Async Function GetURLContents Async(url As String) As Task(Of Byte()).
Porque al hacer el metodo asincrono e de volver a poner todo el codigo de conexion a la BBDD y todo los demas, cuando ya esta echo? Cuando te conectas a una BBDD sin el metodo async no se ha de repetir el codigo.
Gracias de antemano.