I wanted to take a look at Silverlight VS Flash, but this comparison has been done a million times ("Silverlight VS Flash" yields 205,000 results in google), so I wanted to look at it from the project manager side of things and why they should choose one over the other. Neither technology is monstrously better than the other so picking the technology really depends on your needs, your resources and what you want to accomplish. Hopefully this post will provide you with more perspective in making that decision.
Silverlight & .NET Framework:
The first and in my opinion the most appealing thing about Silverlight is its leverage of the .NET Framework. There's some hurdles to get over when first venturing into the world of Silverlight, but for any seasoned .NET developer it feels just like home.
Any .NET Developer, whether windows or web based, can jump right into coding a Silverlight app with ease. What does this mean for your project? You can now take any .NET developer from your resource pool and expect results within a week or so of them first delving into Silverlight.
IDE & Workflow:
There's no question that Flex Builder is a huge improvement on the old Flash IDE, but I don't think any developer that's used both Flex and Visual Studio 2008 would deny that they are miles apart. Visual Studio is a full blown and rich development environment, coupled with addons like ReSharper, CodeSmith, NUnit and so so much more, VS is on a whole different level.
Once you leverage common tools and practises within the .NET framework with your Silverlight app, you suddenly have the same core development structure as you can have for your windows apps. Unit testing, Continuous Integration and agile development are available to any Silverlight developer. So the workflow that you're used to in the .NET world is available to you with Silverlight, with the bonus of now being able to utilize WPF to add a rich UI.
The stats I can find suggest that about 85-95% of users on the web have some version of Flash Player installed on their machines. Silverlight has a lot of catching up to do on this, but lets not forget this is Microsoft we're talking about not just some startup company trying to get a piece of the pie.
Microsoft have made huge ground on getting exposure to the Silverlight plugin. NBC moved to Silverlight right before their exclusive coverage of the Olympics, I've heard that's a big deal. Also the DNC (Democratic National Convention) provided, for the first time, video coverage of the Convention on their website, of course Silverlight based. Biggest of all though is the one that most people overlook ... according to Compete.com, Microsoft.com is the 8th most popular site on the Internet, with around 60 million unique visitors a month. With the homepage and also the download center now in Silverlight that's quite a bit of exposure.
Flash has been around for a long time and in a lot of ways it's still better than Silverlight. You have to put it in perspective though, Flash is now moving into version 10, whereas Silverlight is in beta on version 2.
Microsoft, however, has the benefit of leveraging years of work on the programming side whereas Actionscript is relatively new and has only recently started moving from a scripting language to more of a programming interface for Flash.
So bottom line it depends on your needs and resources, if you have a bunch of .NET Developers and a client that wants a RIA then it's really a no brainer ... Silverlight is for you. If you have a client that needs a full scale business application on the web, Silverlight might also be for you as you have a full scale development framework to leverage. If, however, you have a client that wants a cutting edge UI with 3D integration, then Flash might be a better option. Either way RIA's are the future for business applications and if you want to pitch a solution to your client be sure to consider either Flash or Silverlight apps as a way to deliver that solution to your client.