Preface
There are programming books that are thousands of pages long that aim to be comprehensive references to the C# language and the .NET platform.
This book is different. It is concise and aims to be a brisk, fun read that is packed with practical hands-on walkthroughs of each subject. The breadth of the overarching narrative comes at the cost of some depth, but you will find many signposts to explore further if you wish.
This book is simultaneously a step-by-step guide to learning modern C# proven practices using cross-platform .NET and a brief introduction to the main types of applications that can be built with them. This book is best for beginners to C# and .NET, or programmers who have worked with C# in the past but feel left behind by the changes in the past few years.
If you already have experience with older versions of C#, then in the first topic of Chapter 2, Speaking C#, you can review tables of the new language features and jump straight to them. If you already have experience with older versions of .NET, then in the first topic of Chapter 7, Understanding and Packaging .NET Types, you can review tables of the new platform features and jump straight to them.
I will point out the cool corners and gotchas of C# and .NET, so you can impress colleagues and get productive fast. Rather than slowing down and boring some readers by explaining every little thing, I will assume that you are smart enough to Google an explanation for topics that are related but not necessary to include in a beginner-to-intermediate guide.
You can clone solutions for the step-by-step guided tasks and exercises from the GitHub repository at the following link: https://github.com/markjprice/cs9dotnet5.
If you don't know how, then I provide instructions on how to do this using Visual Studio Code at the end of Chapter 1, Hello, C#! Welcome, .NET!.