1. Type System and Language Fundamentals
The C# type system distinguishes between value types and reference types with real consequences for performance and behavior. A struct is a value type typically allocated on the st...
Read full chapter →The essential Csharp Programming cheat sheet: 7 concise chapters you can read in minutes, distilled from the full deck. When you're ready, drill the flashcards or test yourself under exam conditions.
The C# type system distinguishes between value types and reference types with real consequences for performance and behavior. A struct is a value type typically allocated on the st...
Read full chapter →Delegates are type-safe function pointers that form the foundation for events, callbacks, and most functional patterns in C#. You declare a delegate type with a specific signature,...
Read full chapter →Modern C# has steadily added features that improve expressiveness and reduce boilerplate. Pattern matching tests a value against a pattern and extracts information, with common for...
Read full chapter →LINQ (Language Integrated Query) lets you write query expressions directly in C# to filter, sort, and transform data from collections, databases, and XML. There are two equivalent...
Read full chapter →The async and await keywords let you write asynchronous code that reads like synchronous code. Marking a method async does not make it run on a separate thread by itself; rather, i...
Read full chapter →Modern C# provides several types for working with memory directly while avoiding garbage collector pressure. Span is a ref struct representing a contiguous region of memory, such a...
Read full chapter →The choice of collection profoundly affects performance. Dictionary provides O(1) average-case lookup, insertion, and deletion via a hash table, with TryGetValue preferred over Con...
Read full chapter →Done reading?
Test yourself with the Csharp Programming practice exam — timed questions, instant score, full review of wrong answers. Free.
🎯 Take the Practice Exam →