Lessons
C# · Expert
C# · Expert. Ten lessons. Open-book quizzes. Lesson 1 free.
10 lessons · The Host · Lesson 1 free
Pass all ten lessons for the certificate. Sample · Claim

Lesson 1 · On the house
Span<T> and allocation-free slicing
Span, ReadOnlySpan, stackalloc, and slicing without copying.

Lesson 2
Channels and producer-consumer
System.Threading.Channels for async pipelines with bounded backpressure.

Lesson 3
Thread safety: lock, Interlocked, Parallel
Race conditions, lock, Interlocked atomics, ConcurrentDictionary, and Parallel.For.

Lesson 4
CancellationToken
Cooperative cancellation with CancellationTokenSource, timeouts, and linked tokens.

Lesson 5
IAsyncEnumerable and await foreach
Async streams with async iterators, WithCancellation, and LINQ-style processing.

Lesson 6
Reflection and attributes
Inspect types at runtime, read custom attributes, and invoke members dynamically.

Lesson 7
Expression trees
Expression<Func<...>> as data: inspect, build, and compile code at runtime.

Lesson 8
ref returns, in, and ref struct
Pass and return by reference to avoid copies of large structs safely.

Lesson 9
Operators, equality, and comparison
Overload operators, implement IEquatable<T> and IComparable<T>, and keep GetHashCode consistent.

Lesson 10
Generic math
Static abstract interface members and INumber<T> for one algorithm over all numeric types.
Sample certificate
Certificate of completion
Sign in to claim your certificate of completion.
Certificate
Finish all ten lessons, then sign in
Pass every lesson on this device (quizzes and checks). Then sign in or create an account to type your name and download the JPG.