With regard to Silverlight, I'll outline my experience so far. (NB: Re-reading this it sounds a bit negative, but I'm pointing out the missing features. Overall I like Silverlight, a rich UI in browser using c#? Rocks).
Notable differences are there's no right-click, mousewheel support, print functionality and you can't open a new window. Your OOB SL app can't sit in the notification area. You can handle the mouse events in javascript but not if you want your app to move OOB.
The SL team also seem overly concerned about security to the point of gimping its LOB suitability (no new windows, trust settings for local system access in OOB, notification area, etc.).
Some of these make a Silverlight app feel like it's not windows compatible. Think about highlight text, right-click copy. Or right-click paste. These basic operations which lots of people use are missing. It also feels like an alien UI experience, e.g. you instinctively go to scroll a grid with your mousewheel and it doesn't work. This stuff works in any table in a browser, but not SL.
Programming wise, I haven't used WPF much, but as far as I can tell, there are some significant differences in how you have to attack some problems.
Markup Extensions are missing in SL. It also only has integer indexed binding, so no property bags without some tricks. There are no triggers so you always have to write code to wire up events (irritating in more dynamic pages). It's got no inheritable styling, apart from the ImplicitStyleManager in the toolkit, which isn't up to the job.
So for certain LOB apps it's fine, for others you have to jump through a few hoops (e.g. if you want customisibility for the client). But it's certainly not great for ALL LOB apps.
My impression is also that SL doesn't feel finished yet, there's a lot of niggles. For example, the datagrid is frustrating (doesn't auto-stretch, very difficult to subclass), autocomplete box a bit erratic, navigation framework a bit clunky, combobox/treeview hard to bind (they really haven't sorted out if you want to bind SelectedItem to a different object to the itemsSource).
All in all, Silverlight's almost there, it's fine as long as you're prepared to accept a few limitations and niggles.