C#, .Net History , Versions & Application Types ( 01-A - Beginner)

Most absolute Beginners always struggle with where to start from when programming C# or developing .Net Application. In this article i will be diving into all major concepts , terms they will need to get started with C# programming language and .Net development. This is 1st part of my C# Language Series.

C# Language

It’s a Programming language used to write code that runs on the .NET platform and Unity framework . It designed by Microsoft, led by Anders Hejlsberg. C# has the following core features which makes highly suitable for modern enterprise application development.

Features:

  • Fully object-oriented with support for encapsulation, inheritance, and polymorphism

  • Type Safety : Strongly typed, Static typing & Generic types for type-safe collections and algorithms

  • Modern language features like LINQ, async/await, pattern matching, etc.

  • Memory Management : Automatic garbage collection. No direct pointer manipulation (except in unsafe context)

  • LINQ (Language Integrated Query) for data manipulation

  • Async/await pattern for asynchronous programming

  • Cross-platform via .NET Core/.NET 5+ (Windows, macOS, Linux)

  • Compatible with Microsoft ecosystem (Azure, Windows, etc.)

  • Native support for web, desktop, mobile, and cloud applications

  • Comprehensive standard library

Usage :

C# can be used to write or build the following applications:

  1. Web Applications ( MVC, Razor & Blazor )

  2. Web APIs ( Asp.Net Web API )

  3. Desktop Applications ( Win Form , WPF, UWP, Win UI, MAUI )

  4. Mobile Applications ( MAUI ) - Cross - Platform

  5. Games ( Unity ) : used in buidling 2D, 3D , Augmented Reality , Virtual Reality Applications.

.Net Framework

It’s a framework or platform for building enterprise applications. It was introduced in 2000, built for windows operating system only. Provides a runtime environment and libraries to build and run applications (web, desktop, mobile, cloud, etc.) It Supports multiple languages including C#, F#, VB.NET, etc. Nowadays C# has become the go to language for .Net development.

.Net Core Framework

.NET Core is a cross-platform, open-source framework developed by Microsoft for building modern applications. It was introduced to overcome the limitations of the original .NET Framework, especially its Windows-only nature. It was released in 2016 which support most of the old features in .net with better improvement in performance and tooling.

Unified .Net Framework

The term "Unified .NET Framework" generally refers to the .NET 5+ platform, which consolidates the previously separate .NET technologies into a single, unified platform for building all types of applications. It started with .Net 5 launched in 2020 , β€œCore” was removed . No more Old windows only .Net and Cross platform .Net Core , now we have .Net as a unified framework .

Going forward , you can hear .Net 5, 6, 7, 8 , 9 , 10 et.c . With a single BCL ( Base Class Library) and a single SDK ( Software Development Kit) , you can now build

  • Web apps

  • APIs

  • Desktop apps (WinForms, WPF)

  • Mobile apps (via MAUI)

  • Cloud apps

  • Games (via Unity)

  • IoT apps

.Net Version Support Length

When you’re working in the new era of .Net, you should know about versions and different support cycles. .Net releases differ based on Current or Long Term Support (LTS)

  • LTS : are versions supported at least 3 years or 1 year after the next LTS version is released. (recommended for production apps)

  • Standard/ Short Term Support : Supported for 18 months (good for early access to new features)

  • .Net 1, .Net 1.1 , .Net 2.1 , .Net 3.1 , .Net 6 , .Net 8 & .Net 10 ( to be released Nov, 2025) : Are all LTS Support Level

  • .Net 2.0 , .Net 2.2 , .Net 3, .Net 5 & .Net 7 : STS

Microsoft follows a yearly release schedule for .NET:

  • Even-numbered years (e.g., .NET 6, .NET 8) β†’ LTS

  • Odd-numbered years (e.g., .NET 5, .NET 7, .NET 9) β†’ STS

Application Types

As a developer , the major reason you learn programming is to solve some problems and build applications. The following are various application types you can build with C# and .Net .

πŸ”Ή 1. Console Application

βœ… What It Is: A text-based application that runs in a terminal or command prompt window β€” no graphical interface.

βœ… Use Cases:

  • Utility tools

  • Data migration scripts

  • Test programs

  • Background processes

βœ… Create With CLI:

> dotnet new console -n MyConsoleApp

βœ… Example Code:

Console.WriteLine("Hello, world!");

🌐 2. Web Application

βœ… What It Is:

An application that runs in a web browser. Built using ASP.NET Core, often with Razor Pages, MVC, or Blazor for a single page application. Blazor is the .net equivalent of popular SPA like React, Angular & Vue.js.

βœ… Use Cases:

  • E-commerce websites

  • Dashboards

  • Admin panels

  • Web-based CRMs

βœ… Frameworks:

  • ASP.NET Core MVC

  • Blazor Server / Blazor WebAssembly

  • Razor Pages

βœ… Create With CLI:

> dotnet new mvc -n MyWebApp

πŸ”— 3. Web Services / API

βœ… What It Is:

Backend services (usually RESTful APIs) that expose endpoints which can be consumed by web apps, mobile apps, IoT devices, etc.

βœ… Use Cases:

  • Backend for mobile apps

  • Microservices

  • Public/Private APIs

βœ… Framework:

βœ… Create With CLI:

> dotnet new webapi -n MyApi

πŸ–₯️ 4. Desktop Application

βœ… What It Is:

Apps that run on Windows (sometimes cross-platform) desktop computers. Built with GUI frameworks like WPF, WinForms, or MAUI.

βœ… Use Cases:

  • Accounting software

  • Point-of-sale (POS) systems

  • Rich client applications

βœ… Technologies:

  • WinForms (oldest)

  • WPF (modern, XAML-based)

  • .NET MAUI (for cross-platform desktop + mobile)

βœ… Create WPF Project:

> dotnet new wpf -n MyDesktopApp

πŸ“± 5. Mobile Application

βœ… What It Is:

Apps that run on Android and iOS, built using .NET MAUI or formerly Xamarin.

βœ… Use Cases:

  • Business mobile apps

  • Social network apps

  • Hybrid cross-platform tools

  • Consumer apps (To-do, Finance, etc.)

βœ… Framework:

  • .NET MAUI (recommended)

  • Xamarin (older, being phased out)

βœ… Create With CLI:

> dotnet new maui -n MyMobileApp

πŸ“š 6. Class Library

βœ… What It Is:

A reusable collection of code (DLL) that can be shared across multiple projects.

βœ… Use Cases:

  • Shared business logic

  • Utility/helper functions

  • Domain models

  • Custom libraries (NuGet packages)

βœ… Create With CLI:

> dotnet new classlib -n MyLibrary

πŸ› οΈ 7. Dev Tools

βœ… What It Is:

Tools or apps built to assist developers, often running as CLI apps, analyzers, generators, or even IDE extensions.

βœ… Use Cases:

  • Code generators

  • Linting tools

  • Project scaffolding

  • CLI-based workflows

βœ… Can be built with:

  • Console apps

  • Roslyn analyzers

  • Custom CLI commands (System.CommandLine, Spectre.Console)

0
Subscribe to my newsletter

Read articles from Olayinka U. Kareem directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Olayinka U. Kareem
Olayinka U. Kareem