What's New in the Third Edition?

The 3rd Edition was primarily for Visual Studio 2017 and C# 7.0, but the whole book got a ton of attention. I probably did 8 times as much work for the 3rd Edition as I did for the 2nd, and I think it shows!

  • Updated for Visual Studio 2017 and C# 7.0.
  • Added material on new C# 7 features:
    • Binary literals
    • Digit separator
    • out variable declarations
    • ValueTask information
    • Language support for value tuples (multiple return values)
    • ref returns and ref locals
    • Pattern Matching chapter
    • Local functions
  • Added tables and charts in the back of the book as reference.
    • Keywords table.
    • Operators table.
    • Build-in type hierarchy.
    • Types table.
  • Added several new chapters that are about existing C# topics:
    • Unsafe/unmanaged code
    • Dynamic objects
    • A Tic-Tac-Toe problem in the middle of the book to ease the learning curve.
  • Massive rewrite of several chapters:
    • LINQ
    • Installing Visual Studio (brand new installer)
    • The .NET Framework/Platform to include .NET Standard, .NET Core, and Xamarin
    • The chapter on project dependencies (includes NuGet)
    • The two chapters on creating and using classes got a lot of attention to make the learning curve less steep.
  • Fleshed out many topics not previously covered, but that were C# features:
    • Hexadecimal literals
    • sizeof operator
    • Operator associativity and precedence details
    • P/Invoke
    • The goto keyword.
    • The default keyword
    • Checked and unchecked contexts
    • Partial methods
    • Generic covariance and contravariance
    • Multiple variable assignments and declarations on the same line
    • The global namespace and namespace aliases
    • Volatile fields
  • Added a number of additional Try It Out problems and quizzes.
  • Added section to the website to include additional Try It Out problems.
  • Many additional tweaks to make the book better.