This document contains a simplified list of concepts to guide new developers through learning the basics of the C# programming language, and a brief introduction to the .NET ecosystem.
Fundamentals
Learn the Fundamentals
Object-Oriented Programming
Object-Oriented Programming
Intermediate
- Advanced (Advanced C# course on FreeCodeCamp's YouTube channel)
Extension Methods- Delegates, Lambdas, expression trees
Events- Linq
- Reflection
Nested Types
Exercises:
- C# programming challenges, based on the book by Paul Deite C# for programmers
- Fundamentals of Programming with C# book
- C# in a nutshell by O'Reilly
Tests:
Still missing:
- Data access (course on Pluralsight)
- Class libraries (course on PluralSight)
- Unit testing (course on PluralSight)
- Secure coding with OWASP (course on PluralSight)
- Performance (course on PluralSight)
- Source generators (course on PluralSight)
- Introduction
- Runtime libraries
- MSBuild
- Execution model
- Diagnostics
- Advanced Topics
- SOLID
- Design patterns
Continue on @Elfocrash's .NET Backend Developer roadmap
Complete with roadmap.sh/aspnet-core
Resources:
- Entity Framework Core: Quick intro
- Software Architecture: Course