Dynamic? Well, it really did enable some interesting options (especially for F# and MVC), but it wasn’t a gamechanger really

Covariance and Contravariance? Seriously, do you feel the difference?

WF 4.0? Ok, it was a big overhaul, but it still lacks some “feature identity” - noone uses that as it’s hard to identify any scenario it’s really helpful (and / or necessary) with

MEF? Oh yeah, that’s some quality - but there are some other IoC containers (yes, I realize that MEF is something more) available, so you have valuable alternatives

TPL? Bullseye.

TPL is something I’ve been really waiting for and I didn’t get disappointed.

TPL (Task Parallel Library) is a new subset of .NET API, that aids you with a new way to create parallel, multi-threaded applications in a simplier, clearer and supposedly more efficient way, but MOST IMPORTANT - it sets the foundation for async / await asynchronous programming in .NET 4.5 that is a bridge between asynchronous paradigm of creating applications (especially user interfaces) in WinRT (Windows 8 Metro)!

The more and more I use it, the harder it is to go back and implement anything in .NET 3.5. And I find traditional, synchronous (blocking) user interfaces more and more annoying (try to compare WM5.5 user experience with WP7.5 “Mango” apps).