Skip to content
This image has an empty alt attribute

Essential C# 7.0 Book

A well-organized, no-fluff guide to C# 7.0 for programmers at all experience levels. Reflecting C# 7.0 features and modern programming patterns, it will help you write simple, powerful, robust, secure, and maintainable code.

This image has an empty alt attribute

Essential C# 7.0 Book

This book has been a classic for years, and remains one of the most venerable and trusted titles in the world of C# content, and probably far beyond!Mads Torgersen, C# Program Manager, Microsoft

This book has been a classic for years, and remains one of the most venerable and trusted titles in the world of C# content, and probably far beyond!
Mads Torgersen, C# Program Manager, Microsoft

Learn From an Expert

Author Mark Michaelis is a world-class C# expert: a long-time Microsoft MVP and Regional Director who has served on Microsoft’s C# design review team. He presents a comprehensive tutorial and reference for the entire language, including expert coverage of key C# 7.0 enhancements, C# 7.0’s use with .NET Core/.NET Standard, and cross-platform compilation. He illustrates key constructs with succinct examples and presents best-practice coding guidelines. To help you maintain existing code, separate indexes provide version-specific answers for C# 4.0, 5.0, 6.0, and 7.0, and visual icons show when each language innovation was introduced.

quiz illustration
book illustration

A Peek Inside

  • Make the most of C# 7.0 enhancements, including tuples, deconstructors, pattern matching, local functions, and ref returns
  • Work efficiently with C# data types, operators, control flow, methods, and parameters
  • Write more robust code with C# object-oriented constructs
  • Implement reliable, effective exception handling
  • Reduce code complexity with generics, delegates, lambda expressions, and events
  • Leverage advanced dynamic and declarative programming techniques

More Highlights

  • Query diverse data collections using LINQ with query expressions
  • Create custom collections that operate against business objects
  • Access .NET collections via collection interfaces and standard query operators
  • Master multithreading and synchronization, including the async/await paradigm
  • Optimize performance and interoperability with P/Invoke and unsafe code
  • Run your code on Linux or macOS with cross-platform compilation
  • Includes C# 7.1, 7.2, and 7.3 language enhancements.
in sync illustration

Extras

Source Code

Previous Versions

Purchase the newest edition of the Essential C# series today! Curious about what’s new in Essential C# 8.0?

This image has an empty alt attribute

Start Coding Like an Expert!

This image has an empty alt attribute

Start Coding Like an Expert!

8 thoughts on “The Comprehensive, Expert Guide to C# 7.0”

  1. Hi Mark.
    I am reading Essential C# 7.0 in learning.oreilly.com , this is fantastic book and I enjoy it.
    In chapter 6 on Static Fields section written “Unlike with instance fields, if no initialization for a static field is provided, the static field will automatically be assigned its default value (0, null, false, and so on)”.
    I think instead of saying “instance fields” it is correct to say “instance variables”.

    1. Hi mehdi,
      By variable I assume you mean “local variable”? While local variables may not be initialized when declared, you cannot retrieve a value from a “variable” without assigning it first – the compiler will prevent it. In summary, therefore, “instance field” is the correct term. Technically, it could be expanded to include automatically implemented properties (which internally have instance fields). In other words, the static vs. instance only relates to instance data (at the class level).
      Thanks,
      Mark

  2. I noticed on Amazon that the 6.0 book is 24 pages shorter than 5.0 even though one would expect more content. I realize there are many reasons that could account for this but I was curious if anything was removed since the previous edition, and if so, what exactly? I was just going to sell my 5.0 book but I’m hesitant to do so if there’s anything exclusive in it.

    1. Hi Miles… The reason for the reduced page count is because we eliminated an appendix chapter on Multithreading prior to C# 5.0 and moved it to a download exclusively. I believe this material is even more dated than it was for Essential C# 5.0 such that printing it was not of sufficient value to the reader. As it turns out, we did add pages for C# 6.0 but without removing any the book would have been too long for the binding – so it is a good thing we cut the appendix anyway. :)
      Thanks!
      Mark

  3. Regarding translation to Norwegian:
    2 years ago i started to translate Essentials C# 4.0 third edition, to Norwegian. I have now finished the translation, but i have not published it yet since i wanted to upgrade the book to Essentials C# 5.0 fourth edition, or Essential C# 6.0. I was reading an review by Ian Eliot regarding Essentials C# 5.0. He said that it was not much difference between Essentials C# 4.0 third edition – which i have translated, and Essentials C# 5.0 fourth edition. Now i need to know, what’s best to do, upgrade the translation from Essential C# 4.0 to Essentials C# 5.0 fourth edition, or to Essentials C# 6.0? When vil Essentials C# 6.0 be published?

Comments are closed.