Hi,
First, I will tell you some short historical background of Silverlight.
Silverlight is a subset of WPF, this means it's a scaled down version of WPF, but it can run everywhere. Silverlight was originally codenamed WPF/E, and it's created as a mean to run WPF not just on Windows, although it doesn't contain bells and whistles of WPF: 3D, DirectX integration and accelerations, and full desktop application model.
The first version of Silverlight, the Silverlight 1.0, offers only integration of JavaScript and XAML. It's available in runtime and SDK. The runtime itself is so small, only about 1.2MB in size.
The latest version of Silverlight is Silverlight 2.0 beta 2, and it adds Silverlight 1.0 with the capabilities of running C#/VB codes on a small Silverlight 2.0 CLR. This Silverlight CLR is almost the same as .NET CLR, but it has its own CLR runtime and it doesn't have full .NET CLR capabilities. It's intended to support browser's DOM model that integrates well within the Silverlight CLR.
Silverlight can run on almost any browser:
- Silverlight 1.0 runs on IE 6/IE 7, Firefox 1.5,Firefox 2.0
- Silverlight 2.0 runs on IE6/IE 7, Firefox 1.5, Firefox 2.0, Firefox 3.0, Opera 9.1 (or above), Safari
Why it's used?
It's used to promote WPF as a small rich internet application to be run everywhere. It can be viewed as Microsoft's answer/entry into rich multimedia content of Adobe Flash.
But Silverlight 2.0 goes further: it can integrate well into Visual Studio 2008 and Expression Blend 2.0, even it can integrate well on other IDE such as Spring# (the free IDE of C#), since it allows us to code and debug the code, since it's compiled. It also has the same programming model of its heavier brother, WPF. Although it doesn't have 3D accelerations and again, it's meant to be lightweight across all browsers and platform.
Silverlight is now being supported by Nokia, after it acquires Symbian.
If you download the Silverlight 1.0 SDK or 2.0 SDK, you can find lots of samples there. I recommend you to download the 2.0 SDK, since you can simply debug it on Visual Studio 2008, just like normal .NET application project.
Resources:
http://blogs.msdn.com/mharsh/
http://www.silverlight.net/