Microsoft is releasing technology at the speed of light (Silverlight to be precise). This may or may not be a welcome change from taking 5 years to release an OS but at least you can't say we are boring.
Last fall we released .Net 3.0 which included Windows Presentation Foundation, a managed code library that encapsulates DirectX for user interface rendering and an associated XML based markup language called XAML. Just last month we announced Silverlight 1.0 and Silverlight 1.1 (at the same conference!!!). This post will try to help you sort out what is the same and what is different between these related technologies.
Windows Presentation Foundation (WPF) – http://wpf.netfx3.com
Windows Presentation Foundation is a set of managed code class libraries that encapsulate DirectX and was released as part of .Net 3.0. WPF also introduced an XML based markup language for describing the user interface called XAML (eXtensible Application Markup Language). Since XAML is based in XML it is very toolable so there are a new set of tools coming from Microsoft and others that emit XAML. Expression Blend, Expression Design and Expression Media are from Microsoft and have that ability. There are also 3rd party tools like Zam3D from Electric Rain (http://www.erain.com/products/zam3d/DefaultPDC.asp).
WPF supports 2 deployment models
In either case, .Net 3.0 is required on the system in order to run the application.
I've got some past blog posts that point you to more information on existing WPF applications and tools.
If your new to XAML you can check out my XAML Primer article:
Silverlight 1.0 – http://www.silverlight.net
Silverlight provides the following capabilities:
Visit the Silverlight Gallery to see live samples of Silverlight applications.
There are Visual Control companies that are offering add on controls for Silverlight and WPF. Check out what Telerik is offering for add-on controls for Silverlight:
http://www.telerik.com/demos/aspnet/silverlight/Cube/Examples/RoomDesigner/DefaultCS.aspx
Silverlight 1.0 is in beta with a Go Live license and will be released this summer.
Silverlight 1.1 – http://www.silverlight.net
Silverlight 1.1 builds on Silverlight 1.0 by adding a version of the .Net Framework for use on the client in the browser. Instead of Silverlight applications being made up of XAML and JavaScript they are made up of XAML and C# or XAML and VB. A subset of the .Net Framework class libraries are also available to the developer.
Here is an architecture diagram that depicts both the capabilities of 1.0 and 1.1 together. The .Net Framework adds a complete networking stack, additional WPF controls and layouts, LINQ, Generics and support for Dynamic Languages.
Silverlight 1.1 is in alpha which means you can download it and kick the tires.
The Tools
The tooling for WPF and Silverlight is Microsoft Expression Studio and Visual Studio as well as 3rd party XAML generation tools and visual controls. Visual Studio 2005 or "Orcas" + Expression Blend 2 Preview is the minimal setup I would recommend.
I had a great time speaking at the MSDN Events this week on the topics of Microsoft ASP.Net AJAX and
Mix 2007 was simply awesome this year. I can't remember an event as exciting as this one except when