As the question states which thread is used when accessing a WCF service?
Most web services that I have been subscribing to I have used HttpWebRequest because it doesn’t block the UI thread. But when I access the Bing API it uses a WCF service. Is this an implementation of WebClient or HttpWebRequest?
From the outside it looks more like WebClient because it does not require you to call BeginInvoke to marshal the data to the UI thread? Is this accurate?
There’s no WCF service on a Windows Phone – the API in that platform only contain the code for the client part of WCF (accessing services).
You can not block the UI thread with both
HttpWebRequestandWebClient(e.g., usingBeginGetResponseandDownloadAsync, respectively). If I remember correctly, the WCF client in the phone usesHttpWebRequestinternally, but that’s an implementation detail, it can be changed at any time. And all WCF calls from the Windows Phone platform (and Silverlight as well) need to be asynchronous (i.e., there’s no synchronous support).