AT
2. Task<T> не является базовым типом для чего-то или вокруг которого строится всё. Я приводил ссылку на статью, https://devblogs.microsoft.com/pfxteam/await-anything/ где приводится как раз та абстракция, вокруг которой всё строится, и Task<T> лишь дефолтная деталь реализации. Альтернативные реализации были доступны с самого начала, притом с возможностью достаточно низкоуровневого контроля.
3. Подтянулись перегрузки на концепциях Span/Memory/ValueTask, в которых обозначенная проблема решена. Проблема ValueTask (структуры) в том, что максимально эффективная работа с ними требует достаточно много приседаний.