Question: What is the difference between WPF and Silverlight?

Is it just the same as winforms vs asp as in desktop apps versus web app or is there an overlap?

Answer: 
Silverlight is a subset of the functionality in WPF. WPF is desktops, silverlight is cross-platform web apps. Silverlight can run out-of-browser with limited functionality. if you want full blown WPF and access to everything WPF can access on the client, you can't do silverlight out-of-browser - just build a WPF app.

WPF and silverlight use XAML at its core to describe the layout. There is a MS document that highlights the differences between the two. I just can't find it right now.

WPF is not dead like some bloggers are reporting. Due to its web and cross-platform capabilities it is doubtful SL will ever truly contain 100% of the functionality of its bigger brother WPF. WPF includes some very Windows-specific functionality.

Found the document mentioned above. [Here](http://wpfslguidance.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=28278) it is...
WPF is a desktop API that is a replacement to the venerable pixel-based GDI Winforms library. It uses XML layout (XAML) and binding, partial classes and is no longer pixel-based (it deals in units so apps still work where the user has the DPI set differently).

Silverlight is a subset of WPF that runs within a browser, much like Flash.

Silverlight 3 [extended its reach onto the desktop](http://www.infoworld.com/d/developer-world/first-look-microsoft-silverlight-3-challenges-adobe-air-216) as a counter to Adobe Air so there isn't much of a gap between Silverlight and WPF to the point where one has to question the future of WPF. See [Silverlight 3 might kill Windows Presentation Foundation](http://www.sdtimes.com/link/33355).