Official docs outline
20 sections- A tour of C#
Program structure, types, expressions, statements and the .NET runtime model.
- Type system
Value vs reference types, structs, classes, records, enums, tuples and nullable value types.
- Program structure and top-level statements
Main method, top-level statements, namespaces, using directives and assemblies.
- Classes and objects
Fields, properties, methods, constructors, access modifiers, static members and object initializers.
- Inheritance, interfaces and polymorphism
Inheritance, abstract classes, interfaces, virtual and override, and polymorphism.
- Generics
Type parameters, constraints, covariance and contravariance.
- Records and immutability
Record classes and structs, value equality, with-expressions and init-only properties.
- Pattern matching
is expressions, switch expressions, property, relational and list patterns.
- Nullable reference types
Null-state analysis, annotations, the null-forgiving operator and migrating code.
- Exceptions
try/catch/finally, throwing, exception filters and custom exceptions.
- Delegates, events and lambdas
Delegates, Func/Action, events, lambda expressions and closures.
- LINQ
Query expressions and method syntax, deferred execution and IEnumerable/IQueryable.
- Collections
Lists, dictionaries, sets, queues, immutable and concurrent collections.
- Asynchronous programming
async/await, Task and ValueTask, cancellation, ConfigureAwait and async streams.
- Attributes and reflection
Custom attributes, runtime reflection and source generators.
- Memory management and Span
Garbage collection, IDisposable, using, Span<T>, Memory<T> and ref structs.
- Garbage collection
Generations, managed heap, finalizers and the disposal pattern.
- Parallel and threading
Task Parallel Library, PLINQ, threads and synchronization.
- C# language reference
Keywords, operators, statements and built-in types.
- C# language specification
Formal definition of the C# language.
Each section links to the official page. Titles and summaries by Extra Credit; the docs belong to their authors.