Assuming if you are new to C# - start coding! And start reading <a href="https://learn.microsoft.com/en-us/dotnet/csharp/tour-of-csharp/" rel="nofollow">https://learn.microsoft.com/en-us/dotnet/csharp/tour-of-csha...</a><p>If you are not new to C#, start building an application end-to-end/a classic n-tier application, right from using a database, Entity Framework, WebAPI, DTO, AutoMapper, and a front-end (your choice - Angular/React/Vue with TypeScript or better yet - Blazor).<p>You will not only understand & use dependency injection, reflection, LINQ, multi-threaded programming, generic programming, source-code generation, unit-testing - and much much more in a practical/real-world usage.<p>Peruse <a href="https://referencesource.microsoft.com/" rel="nofollow">https://referencesource.microsoft.com/</a> once in a while. 'Use the source, Luke'<p>Follow various team members of .NET Framework, C# team and the like on various social-media, StackOverlow and the like. .NET Team members >> <a href="https://mobile.twitter.com/i/lists/120961876" rel="nofollow">https://mobile.twitter.com/i/lists/120961876</a><p>I am sure there will be who agree / disagree with the above approach and will provide more viewpoints for you to consider.<p>Enjoy - and strap yourself for an amazing journey or roller-coaster ride, however you want to call it!