Как реализовать приоритетность асинхронных методов?
Приоритетность совсем не означает первоочередность. В реальной жизни долгий и приоритетный процесс вполне может выполняться дольше (и завершиться позже), чем низкоприоритетный. 
Соответственно задание скорее всего подразумевает нечто иное, а именно "разруливание" последовательностью выполнения асинхронных процессов. Соответственно надо гуглить семафоры, мьютексы и очереди.
курить System.Threading.Tasks.Task