Where To Go From Here

Explore the modern .NET ecosystem, discover application frameworks, and review essential deployment and diagnostic tools to guide your continued learning.

Congratulations on finishing this course! We’ve designed this experience to act as a comprehensive C# .NET tutorial for beginners at each concept. We have made significant progress in understanding the fundamentals of application development using C# and .NET.

With the basics covered, the next step is choosing the specific specialization for your career. A common question students ask is: is C# and ASP.NET same? The simple answer is no. C# is the programming language, while ASP.NET is the web framework built on top of it. Knowing the difference is key as you look toward C# .NET developer jobs.

Choosing your path

The modern .NET ecosystem is a unified, cross-platform framework capable of building everything from cloud-native microservices to mobile and desktop applications. Depending on what we want to develop, there are various options:

  • ASP.NET Core: This is the flagship tool for C# web development. It is important to understand the transition of ASP.NET vs. ASP.NET Core; while the older ASP.NET was Windows-only, the modern “Core” version is cross-platform and high-performance. It works well with a variety of front-end technologies, like React, Angular, and Vue.js.

  • Blazor: It allows you to write frontend logic in C# instead of JavaScript, making you a true C# .NET full stack developer.

  • .NET MAUI: This is the go-to framework for C# mobile application development. It allows you to build native apps for Android, iOS, macOS, and Windows from a single shared codebase.

  • Windows Presentation Foundation (WPF): This is Microsoft’s framework for building user interfaces and desktop applications on Windows.

  • Unity: This is a game engine that uses C# for scripting and gameplay programming.

Minimal APIs

When building web services with ASP.NET Core, modern C# uses Minimal APIs by default. This approach reduces the boilerplate required by traditional controller-based routing, allowing us to build an HTTP endpoint in just a few lines of code: