Basically, WPF is part of the .NET framework, and is primarily designed to be use for desktop application, though you can use it in a web application through XBAP.
Silverlight is a browser plug-in like Flash, and application developed for Silverlight can only be run into a web browser. As such, it is less powerful than WPF, since it represents only a subset of the WPF and the .NET framework.
I suggest you take a look at the following links to give yourself a better understanding of both technologies. The first one explains well the difference and gives an advice on how to decide between the two :
http://blogs.msdn.com/jennifer/archive/2008/05/06/when-should-i-use-wpf-vs-silverlight.aspx
http://msdn.microsoft.com/en-us/library/bb404700(VS.95).aspx
http://msdn.microsoft.com/en-us/library/ms754130.aspx
http://msdn.microsoft.com/en-us/library/aa970268.aspx
As for Expression Blend, it is not necessary, everything can be done in Visual Studio. However, one purpose of WPF is to design much richer applications in terms of UI, and one way to accomplish this is to have designers concentrating on the UI while developers work on the application/business logic. Designers can then work with the Expression blend to create a very rich UI much more easily.
André
Software Developer
Xceed Software Inc.