One option, that might be possible, is to use:
IAsyncResult.AsyncWaitHandle[
^] - the asynch web/wcf request methods returns an IAsyncResult.
It's possible that this can be used to create a synchronized wrapper for the service reference. I haven't tried doing things this way in SilverLight, but it seems like an option.
If it works, it can certainly speed up development of "prototypes" for SL.
Regards
Espen Harlinn