По сути, это потому, что Silverlight работает в потоке пользовательского интерфейса окна браузера.Это означает, что если Silverlight синхронно ожидает ответа - все окно браузера в это время не отвечает.
Кроме того, изначально в Silverlight (Silverlight 2) был только стек взаимодействия с клиентским браузером.
Это означает, что вся связь в Silverlight проходила через браузер.
Браузеры не поддерживают модели синхронного программированиядля связи.
Это меньше проблем со стеком связи клиента без браузера Silverlight 3+, но все же имеет смысл сохранить эту модель программирования на месте.