Зачем?
В общей VM один абстрактный/виртуальный метод возвращающий Task
2 VM, наследующиеся от первой VM
В каждой из них перегрузка этого метода с добавлением async в объявлении метода
В одном случае будете вызывать метод await внутри, в другом — не будете
ну я в итоге пришёл к тому чтобы создать одну малофункциональную базу
и от неё наследовать коллекции с асинхронной загрузкой и с обычной
я просто немного подумол и понял что там так то логика самой загрузки отличается кардинально
и обобщать её идея не самая лучшая