2. C# 2: Solving the Issues of C# 1
Chapter 3. Parameterized typing with generics
Chapter 4. Saying nothing with nullable types
Chapter 5. Fast-tracked delegates
3. C# 3: Revolutionizing How We Code
Chapter 8. Cutting fluff with a smart compiler
Chapter 9. Lambda expressions and expression trees
4. C# 4: Playing Nicely with Others
Chapter 13. Minor changes to simplify code
Chapter 14. Dynamic binding in a static language
Chapter 15. Letting your code speak more clearly with Code Contracts
Appendix A. LINQ standard query operators
3.16.81.33