It is thick client based web technology that host an environment for client side code execution. you can compare it something like Adobe Flash.
When to use when you need to develop a rich UI for web based application that is generally not feasible in technologies like ASP.NET
Getting Started with Silverlight |