I'm looking into creating a system / site which includes a website. I would like to get the benefits of WPF, and WBA seems to be a good avenue of doing this. Silverlight on the other hand is also good for accomplishing this goal, with the difference that WBA provides more options and power than Silverlight.
What are the benefits / losses that come with using WBA versus Silverlight? Is WBA only supported in IE?
Any insight would be very helpful.
I assume you mean XBAP (XAML Browser Application) with WBA?
Silverlight and XBAP are pretty similar to each other but they do have some major differences. The largest of these is most likely the fact that XBAPs run on top of the full .Net framework while Silverlight uses a stripped down version of the CLR and class libraries. This results in Silverlight lacking some of the features that WPF has which are available in XBAPs.
Also it is worth understanding that XBAPs are technically ClickOnce applications and as such they are installed to the user's computer. This happens automatically and the user doesn't necessarily understand that - but at least for me, if I saw a XBAP loading from a random web site, I would most likely cancel it and go to another site.
XBAPs also require IE or Firefox and the .Net framework they are built for. Silverlight requires only the Silverlight player which is available for IE, Firefox and Safari and works on Windows and OSX and is much smaller than the full .Net framework in terms of download size.
This said, I prefer XBAPs if I know that the limitations are not an issue. If I was developing an application for intranet use, I'd go with a XBAP as it provides more versatile framework. If the application was to be deployed in the internet, I'd use Silverlight to reach as many users as possible.