Such bad terminology used. What's meant by synchronous and asynchronous? Each of those calls are made asynchronously, but they are made one after the other in a synchronous fashion. Probably not necessary and you could improve things by not awaiting until all of the calls have been made. Regardless, nothing "blocks" here. We don't see the rest of the code, but I'd assume the View is displayed with no data until after the ViewModel is finally populated by all of these async calls. It would be far better to make these calls internally in the ViewModel. Regardless, one would hope that the UI is reporting we're busy during all of this.
Several bad practices all in a single statement. Gotta love it.