For some reason I have been involved in a number of conversations lately about "how is .NET 3.5 different than .NET 2.0?". There is an easy technical answer but I always struggle to quickly access that piece of memory and/or make it relatable to the person asking the question. I've resorted to off the cuff terms like "window dressing and not necessary to deliver a great application" or "nice features that extend the core .NET 2.0 Framework but....". And on it goes, with little success I might add.
I might benefit from carrying some flash cards, huh? Perhaps some graphics on those cards? Let's take a look at what's available...
This one is not bad, but there is no mention of LINQ, AJAX and REST. No chance!
This one is closer, but what exactly are Additional Enhancements? This one also does not relate very well that 3.0 contains 2.0 and 3.5 contains 3.0 and 2.0.
This one is really bland! Did someone draw this up in MSPaint? Glad to see the Entity Framework get a shout out here. Sad to see no representation of the containment (as mentioned earlier).
My personal favorite and not because it is part of the poster I stare at nearly every day. It's so simple and it's structured perfectly (i.e. round!). .NET 2.0 contains the core, 3.0 added WCF, WF, WPF and CardSpace, then .NET 3.5 added LINQ, AJAX and REST on top of those. Winner, winner, winner, hands down.