0 Good to Know 1 The .NET Platform Git The History of .NET GitHub What is .NET? Bash/Cmd Why learn .NET? What can you build? .NET Documentation 2 Development Environment Installing Visual Studio 3 Installing VS Code Basic C# Developing with Windows What is C#? Developing with Linux & Mac Console App - Hello World! Explicit Startup The C# Compiler Reading Program Arguments Debugging in Visual Studio Reading from the Console 4 OOP in C# Writing to the Console C# Value Types Introduction to OOP Casting & Conversion Classes & Objects Strings & String Parsing Reference Types DateTime Fields & Properties Operators Constructors Conditionals (if) Methods Switch Statements Access Modifiers Iteration Statements (Loops) Namespaces Basic Variable Scopes Interfaces Method Overloading Inheritance 5 Polymorphism Intermediate C# Advanced Variable Scopes Implicit Typing & Var Keyword Const Keyword Garbage Collection Enumerations Switch Expressions 6 Arrays & Collections in C# Structs Passing Value Types Arrays Passing Reference Types ArrayList Exception Handling Generic List Generic Stack Generic Queue Generic Dictionary 7 Advanced C# Named Arguments Optional Arguments Extension Methods Generic Types 8 Params Keyword Introduction to LINQ Nullable Value Types What is LINQ? Nullable Reference Types Filtering Data using LINQ Record Types Ordering Data using LINQ Class Libraries Selecting Data using LINQ Custom Exception Types Grouping Data using LINQ The LINQ Query Syntax 9 Basic Testing in C# Why automated Testing? Test Projects Writing Unit Tests 10 MsTest Testing Framework What's Next? Up to You! Web, Mobile, AI, Game, API, Desktop, Cloud, IoT, ML, ... development