Introduction to .NET Framework


Reading time:
Published 2 Years Ago On Saturday, February 12, 2022
Updated 2 Years Ago On Wednesday, April 20, 2022

In this article, we will learn about an introduction to .NET Framework i.e. what is NET Framework, what it is used for, which applications we can build using .NET frameworks, history of the .NET Framework, different versions of .NET Frameworks available & supported and much more.
This is the first post in the Series – Getting Started with .NET Platform, .NET Framework & .NET Core (.NET 3+)

  1. Post 1 – Introduction to .NET Framework (this post)
  2. Post 2 – Introduction to .NET Core (.NET 5+)
  3. Post 3 – .NET Framework vs .NET Core (.NET 5+)
  4. Post 4 – Migrate from .NET Framework to .NET Core (.NET 6) – Detailed Guide

Overview of .NET Framework
.NET Framework is a platform provided by Microsoft for software developers and this developer platform consists of runtime services, base class libraries that can be used in your code, various tools to support software development tasks and also this platform supports more than one programming language to choose from.

.NET Framework is part of the .NET Platform and this .NET platform was first introduced in 2002 after that, it kept on improving and evolving with many upgrades all these years. Today .NET is a mature platform and yet it still keeps evolving with improvements and new features.

.NET Framework 4.8 is the latest and recommended version of the .NET Framework for the development of the applications. .NET Framework gets shipped with Windows OS.

.NET Framework is a managed execution environment on Windows and it also provides many services to the applications running in this managed environment. The service provided to .NET Framework applications includes development framework, common type system, memory management, etc.

The main goal of the .NET Framework is to provide an environment using which developers can develop/run/test their applications and users of the application are able to run the applications developed for the .NET framework.

Microsoft also provides an integrated development environment (IDE) named Visual Studio that can be used to design, develop & run .NET framework applications.

In Addition, .NET SDK Can be downloaded from here

Main Objective of .NET Framework

.NET Framework is designed to build and run windows/web applications on windows to fulfil the following objectives

  1. Provide an object-oriented programming environment for the development
  2. Provide a consistent runtime for the execution of the applications irrespective of whether it is executed locally, remotely or locally through we activation (Click Once)
  3. Provide an environment that makes it possible to execute applications in a safe and trusted or semi-trusted way.
  4. Provide consistent developer experience for developing varying types of applications such as console apps, windows app, web apps, services, etc.
  5. Provide inter-process communication as per industry standard which makes it possible to integrate .NET Framework-based application with any other application.

Major Components of .NET Framework

.NET framework is made of two major components Common Language Runtime (CLR) and the .NET Framework Class Library. The Class Library in .NET Framework provides a set of APIs and types to implement the common functionalities in your application targeting .NET Framework. The CLR is the execution engine that handles running applications.

Common Language Runtime (CLR)

The Common Language Runtime (CLR) is the heart of the .NET Framework. CLR is the execution engine that is responsible for the execution of the applications built on the .NET framework. CLR provides many services for the execution of the application such as compilation i.e. conversion of code into Intermediate Language (IL) or Microsoft Intermediate Language (MSIL), conversion of IL code (compiled code) into machine code (using JIT compiler), memory management using garbage collection, thread management, exception handling, Security and much more.

CLR manages the execution of the application regardless of the programming language used for the development of the application. This way CLR enhances developer productivity as it allows developers the use the programming language in which they are good and comfortable.

.NET Framework-based applications are coded in the programming of choice (C# or F# or Visual Basic) and compiled into the MSIL and this compiled IL code is stored in assemblies i.e. files with .dll or .exe file extension. CLR takes these assemblies and with help of the Just-In-Time (JIT) compiler converts this compiled code into Machine Code that can be executed on that computer it is running on.

.NET Framework Class Library

.NET framework ships with a vast set of APIs and types for the development and implementation of the common functionality in your application. The class library provides different types to hold your data like text, date, time, numbers, etc. and also provides APIs to perform read/write operations on the data i.e. read/write files, connecting to the database to save or retrieve data, maths operations, text operations, drawing operations, etc.

Programming Languages Supported in .NET Framework

.NET Framework supports majorly 3 main programming languages. So developers can choose and code in their preferred choice of language.

  1. C# – Pronounced as C Sharp is the most popular programming language on the .NET platform. It is a simple, modern, objected-oriented and type-safe programming language available on the .NET platform.
  2. F# – Pronounced as F Sharp allows developers to easily write programs that are clearly expressed, robust and performant.
  3. Visual Basic – It is an object-oriented and type-safe language that is easy to read, write and understand.

.NET Framework applications are written in C#, F#, or Visual Basic and compiled to Common Intermediate Language (CIL).

Application Types Supported in .NET Framework

You can use .NET Framework to develop the following types of applications and services

  • Console applications
  • Windows GUI apps (Windows Forms)
  • Windows Presentation Foundation (WPF) apps
  • ASP.NET based applications
  • Windows services
  • Service-oriented apps using Windows Communication Foundation (WCF)
  • Workflow-enabled apps using Windows Workflow Foundation (WF)

.NET Framework IDE

Visual Studio IDE (integrated development environment) can be used for the development of applications using the .NET Framework. There are different editions of Visual Studio provided by Microsoft and based on your need the best fit edition of Visual Studio can be selected for your development purpose.

As at the time of writing this article, the latest version of visual studio available is Visual Studio 2022 version 17.0. The different editions available are Community, professional & enterprise. The Visual Studio Community is free to use but not for all.

There is also a free code editor called Visual Studio Code that is a lightweight but powerful editor that can run on Windows, macOS and Linux. There are extensions available for this code editor for C# language and .NET runtime.

.NET Framework Deployment Models

Deployment of .NET Framework-based applications involves packaging and distribution of the application. The packaging can be of a single assembly or multiple assemblies, multiple assemblies can also be compressed into a .cab (cabinet) files or as an installable .msi file using windows installer or third party installer.

You can distribute your application to a web server or other centralized location so that users can download and install the application. For distribution, you can choose from several deployment models like install from the web that is an online web installer or you can choose an offline installer using install from disc. For enterprise applications, you can even choose to install it from a local area network.

In our next article, we will learn about the new age implementation of .NET Framework i.e. .NET Core (now known as .NET x)

Please provide your suggestions & questions in the comments section below

The need for a top business owner or organization to have a professional, scalable, Fast, Optimized,Efficient, Very Secured web application (website) can never be over emphasized.
However, With this great tool (Web Application) Business Owners will definitely and Undoubtedly solidify their online presence, improve their Search Engine ranking, eliminate the likelihood of Missing out on search engine queries / results by prospective clients whom may search for a business like theirs on search engines like Bing and google, stay toe to toe with Compititors who already have a web application etc.
Read Now Top 15 Reasosns why you need a website for your Business
You don’t need to do all of these alone, We got you covered!! Contact us now your satisfaction is always our priority. price definitely won't be a problem.

Thanks for reading

What Does Application Programming Interface (API) Mean

What is the Meaning of Session Cookie