Ответ на поставленный вопрос: НИКАК!
Пояснение: НЕ НАДО ТАК!
Синхронные запросы на сервер были убраны СПЕЦИАЛЬНО, что бы у любителей грузить данные в UI потоке не было такой возможности.
Повесьте progress bar на время загрузки, а когда данные загрузятся - выведите их, ничего сложного в этом нет. Для синтаксического сахара можно ещё установить Async CTP.
ObservableCollection уведомляет о изменении своих элементов. Но и каждый элемент должен уведомлять о своем изменении, если у него меняются поля (вот тут и может пригодиться INotifyPropertyChanged)