Skip to content
Ian Griffiths By Ian Griffiths Technical Fellow I
Programming C# 10 Book, by Ian Griffiths, published by O'Reilly Media, is now available to buy.

Endjin Technical Fellow and 15 times Microsoft MVP Ian Griffiths has been the author of O'Reilly Media's Programming C# book series for over a decade; C# 5.0 (2012), C# 8.0 (2019), the latest edition covering C# 10 (and C# 9.0 features) has just been released to buy: [Amazon UK], [Amazon US].

The .NET landscape has changed dramatically since the C# 8.0 edition was published in 2019; the "One .NET" initiative finally delivered a unified, high-performance, multi-CPU architecture, cross-platform version of .NET with Long Term Support.

Programming C# 10 covers all of the additions and changes to the C# language that have been made since the C# 8.0 edition, including:

C# 9.0

  • record types
  • partial methods
  • type patterns

C# 10.0

  • async keyword
  • boilerplate reduction
  • CallerArgumentExpression
  • global using directives
  • ignoring arguments in anonymous methods
  • namespace declaration
  • nullable references
  • property patterns
  • record structs
  • release of
  • return types for anonymous functions
  • string interpolation
  • throwing exceptions
  • tuple deconstruction
  • using static directives
  • zero-argument constructors

The book is written for experienced developers who want to gain a thorough understanding of C# and the underlying .NET runtime.

Code samples from the book can be found at https://github.com/idg10/prog-cs-10-examples

Ian has also published a number of in-depth articles delving into the nuances of C# 9.0 / 10 / 11 and .NET 6, which you may find interesting:

Ian Griffiths

Technical Fellow I

Ian Griffiths

Ian has worked in various aspects of computing, including computer networking, embedded real-time systems, broadcast television systems, medical imaging, and all forms of cloud computing. Ian is a Technical Fellow at endjin, and Microsoft MVP in Developer Technologies. He is the author of O'Reilly's Programming C# 8.0, and has written Pluralsight courses on WPF (and here) and the TPL. Technology brings him joy.