I don't see anything about async/await, extension methods, or lambdas. C# has quite a few additions since 2006. I would hate to go back to C# 2. C# 5 is the current and C# 6 coming very soon.
I often have to use C# 2.0 because that's the version that the SQL Server 2005 CLR understands. It turns out not to be so bad since you still have closures (in the form of anonymous delegates), generics, and user-defined operators.
Generics and user-defined conversion operators are powerful enough to nicely simulate Haskell's type classes (or Scala's traits), which, in my opinion, is a bigger deal than higher-order functions and 3.0+'s version of “type inferencing”.