First:
WPF is 100% browser independent, because WPF doesn't run in the browser.
XBAP (now deprecated) and Silverlight run in the browser, but both are subsets of WPF.
Second:
The major benefit of WPF is the hierarchical nature of the GUI structures you can create. If you've ever done ASP.NET programming, WPF is a more natural move than WinForms.
Databinding in WPF is different, but better, IMO.
Bottom line: XAML and it's intricacies are a big learning curve, and WPF and XAML go very much hand in hand. But once you understand the basics and can start constructing basic GUIs with it, you'll never want to use WinForms again.
Regarding Pros and Cons, I'd say the only real con to WPF is the large learning curve. It can do everything WinForms can do from a .NET perspective, and is easier to use (once you understand it) than WinForms. The only place it might be "lacking" is in direct GDI+ manipulation, but you'll probably want to avoid that wherever possible. If it becomes necessary in a WPF project, just create a WinForms control and host it in WPF. Not the most elegant solution, but it can get the job done.