What are the disadvantages of async method?

Why someone shouldn’t use an async method instead of a coroutine?

That’s a fairly broad conversation.

Any context in which you’re looking to discuss? How much do you know about async and coroutines? Have you read any articles on the topics to gather opinions out there?

Someone might use coroutines (mainly) to perform these tasks:
1- Do something across multiple frames
2- Do something with delays

async methods can achieve the same thing.
Specifically there is an open-source library that gives you ability to wait for fixed updates and other Unity events:
http://www.stevevermeulen.com/index.php/2017/09/using-async-await-in-unity3d-2017/

Other than that, you can return value from an async method (which you cannot do when using coroutines).

I’m wondering is there anything that coroutines do that an async method does it worse (or can’t do at all)?