Current C# Books

C# Books

I recently purchased a few books on the C# programming language. I wanted to be as up-to-date as possible, so I tried to find books covering the latest version, which as of November 2022, is version 11. So far, I only found one book covering C# 11, written in a way that I actually like. The following books are currently my favorite books on this growing language.

TitleReleasedC# Version
C# 11 and .NET 7 by Mark J. PriceNovember 202211
Real-World Implementation of C# Design Patterns by Bruce M. Van Horn IISeptember 202210
The C# Workshop by Jason Hales, Almantas Karpavicius, Mateus Viega September 202210

Keeping up-to-date with software versions must be a difficult task as languages such as C# are updated annually. Fortunately the basics of computer programming languages don’t change too much if at all. The above-mentioned books in conjunction with the Microsoft documentation should be all I need to learn this language.

Often when I visit online forums and message boards, I see posts from other learners asking for book recommendations. They are usually met with the tired old response that they don’t need books and they should just watch YouTube videos and/or read the Microsoft/React/Node/etc. documentation.

What these people fail to realize is that some of us find great value in actually reading books. I use a variety of sources whenever I learn something. I watch YouTube videos, purchase Udemy courses, read official documentation, and read books. Books are especially great for going into detail and are very handy to read while doing mundane tasks such as commuting to work.

The abovementioned books may be purchased at Amazon or the publisher’s website, Packt Publishing.

Goodbye Unnecessary C# Ceremony Boilerplate

As of C# version 9, we were able to finally say goodbye to the unnecessary ceremony boilerplate. One thing that I found confusing when first learning to write code in C# was the amount of code required to perform a simple task, you know, take the Hello World example for example:

using System;
namespace HelloWorld
{
  class Program
    {
      static void Main(string[] args)
      {
        Console.WriteLine("Hello World!");
      }
    }
}

That is a lot of fluff just to tell the system to display one line of text. As of C# version 9, we no longer need to include so much code for top-level statements. Our old friend, Hello World may now be written as:

using System;
Console.WriteLine("Hello World!");

Those of you familiar with C# probably already know this since we are now on version 11. But newbies like me are only now discovering these updates as most courses, books, and tutorials have yet to cover all the changes from every release.