Welcome to MSDN Blogs Sign in | Join | Help

Syndication

News

Are you a woman in technology?

  • I'd love to share your story in my "Featured Women in Technology" posts! Email me at featured@microsoft.com.

Links


When should I use WPF vs. Silverlight?

In my role, I work with a number of large corporations, and this is a question that they ask me regularly: What is the difference between the Windows Presentation Foundation (WPF) and Silverlight, and in what scenarios does it make sense to use each? 

Microsoft feels that user experience is important, and invested in multiple technologies to promote better user experience.  Both WPF and Silverlight use XAML (Extensible Application Markup Language) under the covers. 

Let's look at some of the different characteristics of each technology:

 

WPF:

  • Ships as part of the .NET Framework (version 3.0 and onward)
  • Runs as Windows application or as web "browser application" (called XBAP, for "XAML Browser Application").  Note that XBAPs run only in Internet Explorer with .NET 3.0 and in both Internet Explorer and Firefox with .NET 3.5.  
  • Runs on Windows machines only (Windows XP, Windows Server 2003, Windows Vista, and Windows Server 2008)
  • Richest functionality, including 3D graphics

Silverlight:

  • Ships independently
  • Runs in web browsers only (Internet Explorer, Firefox, Safari)
  • Runs on Windows or Mac operating systems (also on Linux via Moonlight, which is an open source implementation of Silverlight based on Mono)
  • Functionality is a subset of WPF's feature set

 

When should you use each?  The maddening answer is (of course): it depends! 

WPF is a more mature technology and was designed with a richer feature set.  It also has the advantage of being able to run in a browser or as an installed Windows-Form-type app. 

Silverlight has a broader reach.  You can access Silverlight from many operating systems and web browsers

The most important reason to choose one over the other should be based on the intended audience for the application.  For example, if a corporation is designing an application for internal use only and every employee has Windows XP as the company standard OS, then go with WPF to leverage the richer feature set.  If a corporation is designing an external-facing website, then Silverlight is the better choice because potential customers can access the website from a variety of different operating systems and browsers. 

Published Tuesday, May 06, 2008 5:30 PM by jennmar

Filed under: ,

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

# re: When should I use WPF vs. Silverlight? @ Tuesday, May 06, 2008 12:56 PM

Easy choice for me, WPF requires too steep of graphic requirements for the corporate environment. Wish I could use it, but reality is it just isn't meant for the corporate PC world.

Dave

# re: When should I use WPF vs. Silverlight? @ Tuesday, May 06, 2008 1:48 PM

When should you use each? Is only a question because to pull it of Microsoft does not have a complete cross technology platfrom with different views into the model.

Now the question is if you use both or multiple including asp.net. How can we have a single Model View Controller (MVC) type foundation/framework. Why is there a seperate library for WPF one for ASP.NET and yet to be announce one for SilverLight. Could there be a single Model, and Controller with the views being used for the given platform without having to (re)write a SilverLight Model and a WPF Model. How about just a seperate View built in SilverLight and one built in WPF and one Built in ASP.NET yet they all share the same Model and Controller? Could Microsoft now come up with a single MVC framework that cross all Presentation bounds without having multiple frameworks?

Some One

# re: When should I use WPF vs. Silverlight? @ Tuesday, May 06, 2008 2:34 PM

Isn't it only two operating systems, Windows and MAC?

Henrik Dahl

# re: When should I use WPF vs. Silverlight? @ Tuesday, May 06, 2008 3:38 PM

What? WPF applications (.exe) can run on web browsers?

I need to get my Imagine Cup Interface Design entry (http://filipefreitas.net/blog/?p=1157) on my blog ASAP for everyone to see!

Filipe Freitas

# SmartPoint Solutions FastTrack Review @ Thursday, May 22, 2008 2:24 PM

Rich User Experience choices for a Line of Business application Context SmartPoint are innovators in

Fasttrack ISV Virtual Design Review Team

# re: When should I use WPF vs. Silverlight? @ Monday, June 23, 2008 8:07 PM

One thing no one seems to mention is that the silverlight fonts look "horrible." The fonts in WPF look just as good as standard HTML and desktop applications. This makes silverlight useless for data driven applications in my opinion. Take a close look at the fonts, especially at small sizes and you will see the difference. Flash has always suffered from this problem as well. Also none of the controls look standardized. When it comes to usability, silverlight is greatly lacking in my opinion. It's highly overated.

Levi Page

# re: When should I use WPF vs. Silverlight? @ Friday, July 11, 2008 1:16 PM

BTW, your blog entry has been plagiarized without due credit:

http://kranthikiran.wordpress.com/2008/05/27/when-should-i-use-wpf-vs-silverlight/

Anonymous

# re: When should I use WPF vs. Silverlight? @ Sunday, January 25, 2009 9:58 AM

Well saying that Flash and Flex have problems with fonts is Phooee. Flex and Flash fonts look fine. I ain't no genius and I ain't no Senators son but I know the fonts in Silverlight looked fine in Beta 2 and look like crap in the final release. Now it would be easy to figure out why with a before and after. Looks like Microsoft is going down the same road GM went. Nobody wants Vista and nobody wants Silverlight with it's ugly fonts. What happened to quality. I'm moving on with Adobe Flex 3 and ActionScript 3 cause it's the real deal.

Randy

# re: When should I use WPF vs. Silverlight? @ Tuesday, May 26, 2009 4:02 PM

This is very clearly understand for difference between Silverlight and WpF

Sekhar

# re: When should I use WPF vs. Silverlight? @ Thursday, July 23, 2009 3:32 AM

Abe yaar I havent use it till now...

Ash-Ish

# re: When should I use WPF vs. Silverlight? @ Thursday, August 06, 2009 12:44 PM

Silverlight now supports embedding fonts...problem solved!!

http://www.switchonthecode.com/tutorials/silverlight-3-custom-fonts

Dean

# re: When should I use WPF vs. Silverlight? @ Saturday, September 12, 2009 6:57 PM

Hi!

I was reading in other web-site you can run Silverlight OOB on Windows. Is it right?

In other words. Can we run a silverlight (no WPF) application Out of Browser?

Thanks in advance.

Regards,

Ricardo

Ricardo

# re: When should I use WPF vs. Silverlight? @ Tuesday, October 13, 2009 11:54 AM

Hi Ricardo Ricardo,

Yes, that's true. Check out silverlight 3 official site (http://silverlight.net/getstarted/silverlight3) for new features information.

Roger

Leave a Comment

(required) 
required 
(required) 

  
Enter Code Here: Required
Page view tracker