There are multiple ways that you can call the CRM Services from Silverlight 2. I’ve seen people using POX (Plain Old XML) and hand crafting SOAP packets, for example David Yack has a nice set of helper classes that he uses in his book; I’ve also seen (and created) examples that use a WCF intermediary proxy; at the end of the day, it all comes down to HTTP calls so you can go at a very low level and still achieve your results.
While those techniques have their benefits (e.g. smaller download sizes, aggregation of web services, tunneling, etc.) one of the most compelling method for calling web services from a development perspective is to use the proxies that tools such as VS generate when you add a “Service Reference”. To wire up Silverlight 2 and the CRM services via the “Add Service Reference” there are a couple of details that you have to take into account and I have detailed those in this post along with sample code.