Advanced C# Programming Concepts
2h 18mAdvanced2025-06-09
Authors

Joe Marini
Senior Developer Advocate at Google, Developer
Course details
Explore modern language features and development patterns in this advanced skills course on C#. Instructor Joe Marini guides you through sophisticated programming techniques including C# indexers, pattern matching, and improved syntax for enhanced code readability. In addition, he covers critical topics such as delegates, events, lambda expressions, and interfaces, equipping you with comprehensive skills for creating more flexible and efficient code. Through practical examples, you’ll get a chance to master custom type manipulation and advanced object-oriented programming concepts like deconstruction syntax, null-coalescing operators, and custom type comparisons.
Learning objectives
Create C# applications that use structural pattern matching.
Understand how to employ the latest C# idioms when writing modern code.
Create classes that use interfaces to help encapsulate relevant behavior.
Use delegates to build classes that have customizable logic.
Write succinct code using lambda functions.
Employ object-oriented techniques that give your classes the same behavior as built-in language objects.
Learning objectives
Create C# applications that use structural pattern matching.
Understand how to employ the latest C# idioms when writing modern code.
Create classes that use interfaces to help encapsulate relevant behavior.
Use delegates to build classes that have customizable logic.
Write succinct code using lambda functions.
Employ object-oriented techniques that give your classes the same behavior as built-in language objects.
Skills covered
C#Programming LanguagesMicrosoftSoftware DevelopmentOne-Off
Concepts
0. Introduction
- 01 - Advanced Features of C#
- 02 - Getting set up
- 03 - Using CoderPad
1. Advanced Language Features
- 04 - Indexes and ranges
- 05 - Class Indexers
- 06 - Null coalescing operator
- 07 - Deconstruction with tuples
- 08 - Deconstruction with classes
- 09 - Literal number improvements
- 10 - Solution - Deconstruction
2. Structural Pattern Matching
- 11 - Overview of pattern matching
- 12 - Basic patterns
- 13 - Enhanced switch statements
- 14 - Positional patterns
- 15 - Relational patterns
- 16 - Solution - patterns
3. Delegates
- 17 - What are delegates
- 18 - Anonymous delegates
- 19 - Composite delegates
- 20 - Solution - Delegates
4. Events
- 21 - C# event handlers
- 22 - Event chaining
- 23 - Challenge - Events
- 24 - Solution - Events
5. Lambda Functions
- 25 - Lambda functions overview
- 26 - Lambdas as delegates
- 27 - Challenge - Lambda functions
- 28 - Solution - Lambda functions
6. Interfaces
- 29 - What are interfaces
- 30 - Defining and implementing an interface
- 31 - Interfaces and casting
- 32 - Multiple interfaces
- 33 - Explicit interfaces
- 34 - .NET-defined interfaces
- 35 - Solution - Interfaces
Conclusion
- 36 - Conclusion