Applying Asynchronous Programming in C Sharp is a PluralSight course by Filip Ekberg.
It covers async, await, using Task.Run and manual continuations, cancellations, getting async progress and more.
I knew a bit about this, having used async before, but there was plenty new to learn.
Classes and the code are very easy to understand, and the length is very reasonable (around 3 hours).