Непонятно с async-await в C# - 2
Как я понял, речь идёт о модели того, как внутри работают асинки. Ну и они работают явно на конкретной текущей реализации (чего там? стейт-машина?). Т.е. там нет какой-то общепринятой "теории асинхронного программирования", которой бы все реализации должны были следовать и выучив которую ты бы мог понимать любую из этих реализаций.
Вдобавок по тому видео с Адамом Фурманеком. Практически все вопросы, что он затронул, освещены в статье
Asynchronous programming - C# | Microsoft Docs
и ссылкам в ней. Разве что Адам предложил какие-то спагетти для решения отдельных проблем - может, у них в Амазоне так и делают. Но основные ловушки и рекомендации использования асинков в типичных случаях в статье по моей ссылке приведены. И про стейт-машину и прочее там тоже есть, но без потрохов. С потрохами - полно статей в инете. Вплоть от 17 года нашёл.