I assume you mean "suffix", not "prefix".
Microsoft uses the "Async" suffix because they are (often) adding asynchronous versions of methods that have already existed for a long time. So there is not much of a choice but to name them differently than the synchronous versions, so adding "Async" makes sense.
If you are creating new methods yourself, then this is what I do:
- If you will have both asynchronous and synchronous versions of the methods, then name the asynchronous one with "Async".
- If the only version of the method is asynchronous, then there really is no need to use the "Async" suffix, since the return type makes it clear that it's asynchronous.
In the end, it's up to you. It really makes no functional difference.