In order to design / reuse a library usable both for WPF apps, Windows Phone 8 apps and later Windows 8 / RT apps, we need to make some HttpWebRequest call, preferably synchrono
The HttpWebRequest use UI thread to process a request, don't ask me why.
So if you try to wait a result by lock the UI thread, you will get a deadlock condition, because you lock UI thread until request is not complete and request will not be complete while UI thread is locked.
Maybe you cloud use the Result property of Task. It works on .NET 4.0/4.5 and Windows Phone 8.