Summary
In this chapter, we looked in short at the history of C#. We then explored the basic concepts behind the CLI and its constituents, such as CTS, CLS, CIL, and VES. Then, we looked at the .NET family of frameworks and briefly discussed .NET Framework, .NET Core, and Xamarin. We also talked about assemblies, the GAC (for .NET Framework) and the runtime package store (for .NET Core). Finally, we wrote our first C# program and looked at its structure.
This overview of the frameworks and the runtime will help you to understand the context of writing and executing a C# program and will provide a good background when we talk about more advanced features such as reflection, assembly loading, or look at the .NET Core framework.
In the next chapter, we will explore the basic data types and operators in C# and learn how to work with them.