Silverlight can be likened to a Microsoft version of a Java Applet. It is a stripped down version of the CLR that is executed within the framework of a browser. It utilizes a sandbox type security scheme as well.
Silverlight affords us the ability to run C# (or any other CLR language) code at the client, thereby not requiring the burden of going back to the server for each operation, and also aaffording the application expanded capabilities that are not suitable for HTTP requests.
The caution regarding Silverlight is that it is in fact a stripped down version of the language. Applications must be compiled using the Silverlight tool set to be included in the Silverlight project. If trying to utilize code written in other applications, the compiler directives of
#if SILVERLIGHT
#else
#endif
prove to be very helpful!
Additional information on Silverlight can be found at: