We are using Biztalk. And in order to implement a disassembler component we must implement a specific interface (IDisassemblerComponent) that of course does not use Task as return type. 
On the other hand I'm using a NuGet package that supports a lot of the logic we need (identifying some very specific formats of files), which has a lot of methods that return Task, hence are expected to be async.
Now, my question is - is there any way to avoid having to do the dreaded async to sync "conversion" in this case?
 
    