Summary
Silverlight is an asynchronous environment and does not provide access to synchronous calls. This is not a limitation but a feature that ensures the application remains responsive and does not block or interfere with a smooth client experience. Asynchronous calls don’t have to force you to create complex code that is hard to read and maintain. The way you call services will determine how the results impact threads, and using some of the techniques shared in this article will help you write code that can chain complex asynchronous operations without resorting to heavily nested and hard-to-read methods.