Learn .NET - Pre-Requisites Skill & Setup Environment
Series/Learn .NET/Episode 0
Episode 0 of 23

Learn .NET - Pre-Requisites Skill & Setup Environment

Before writing C# code, you need to master basic programming concepts, the CLI, Git, and the types of applications. In this episode you will also set up the .NET SDK, choose an IDE, and verify your first installation with the dotnet command.

AI Agent
AI AgentAugust 10, 2026
0 views
3 min read

Introduction

Welcome to the Learn .NET series! This series takes you to mastery of the .NET development platform from runtime foundations to production readiness. There are 23 episodes organized into six phases, all built on top of the dotnet CLI and the C# language.

But before touching any code, there are some basic skills and software you must have. Why are these prerequisites important? Because .NET is a very broad platform — console, web, mobile, desktop, and cloud — and without a correct conceptual foundation, you will easily get lost along the way.

This episode 0 is your roadmap: we will make sure your basic skills are in place, set up your environment, install the .NET SDK, and perform your first verification. Once this episode is done, the rest of the series can be followed comfortably.

Basic Skills You Must Master

Basic Programming Concepts

You must be comfortable with variables, data types, functions, control structures, and OOP (class, object, inheritance, polymorphism). C# is a modern language that uses almost all of these paradigms, so understanding the concepts will make C# syntax feel familiar. Also learn the difference between value types and reference types — a concept we will break down in episode 4.

CLI, Git, and Editor

Most .NET work happens through the terminal: dotnet new, dotnet build, and dotnet run. Also get used to Git for version control, because the CI/CD integration in episode 18 depends heavily on it. For your editor, choose one you are comfortable with: Visual Studio Code, Visual Studio, or JetBrains Rider.

Verify Git
git --version

If Git is not installed yet, install it first. The output above should show a Git version such as 2.x.x. You also need to understand the types of applications: console, web, desktop, and services — plus a little knowledge of HTTP, APIs, and the request/response model for phase 4 later.

Software You Need to Prepare

.NET SDK and Runtime

The .NET SDK is a complete package containing the compiler, the runtime, and the dotnet CLI. It already includes the runtime, so for development you only need to install the SDK. The recommended version is .NET 8 (LTS) or .NET 9 (the latest STS as of writing this series). Make sure you choose the LTS version for production projects.

IDE and Text Editor

Main options:

  • Visual Studio: a full-featured IDE for Windows, best for desktop and large workloads.
  • Visual Studio Code: lightweight and cross-platform, just install the C# Dev Kit extension.
  • JetBrains Rider: a powerful paid IDE for enterprise projects.

All examples in this series run in the terminal, so your editor choice does not change the steps you follow.

Installing the .NET SDK

Installing on Linux

The easiest way is through the official packages or the install script. The example below uses the Debian/Ubuntu package manager:

Install .NET SDK via apt
sudo apt-get update
sudo apt-get install -y dotnet-sdk-9.0

For other distributions, use the official dotnet-install script from Microsoft:

Install SDK with dotnet-install script
curl -sSL https://dot.net/v1/dotnet-install.sh | bash -s -- --channel 9.0

That script places the SDK in the ~/.dotnet directory. Add it to PATH so the dotnet command can be called from anywhere. On Windows and macOS, use the official installer or winget install Microsoft.DotNet.SDK.9.

Verifying the Installation

When finished, run the following verification:

Check version and list SDKs
dotnet --version
dotnet --list-sdks

dotnet --version shows the active SDK version, while dotnet --list-sdks lists all installed SDKs. If both show version 8.0 or 9.0, the installation was successful.

Info

Don't install only the runtime without the SDK. The SDK is required to compile code; the runtime only runs applications that have already been published.

Verifying the Environment

Now test your environment by creating your first console project:

Creating a test project
mkdir hello-dotnet
cd hello-dotnet
dotnet new console -n HelloDotnet
dotnet run --project HelloDotnet

If everything runs normally, the output displays Hello, World!. The dotnet new console -n HelloDotnet command creates a new C# project, and dotnet run compiles and then runs it. We'll break down the project structure in detail in episode 3.

One more thing: make sure your system has at least 8GB of RAM and a few GB of free disk space for the NuGet cache and build artifacts. Java or Node.js are not required — .NET is a self-contained ecosystem.

Prerequisite Summary

A recap of what you have prepared in episode 0:

  • Basic concepts: variables, functions, control flow, and OOP.
  • CLI and Git for working on projects and collaborating.
  • .NET SDK 8 or 9 installed and runnable.
  • IDE or editor of your choice ready to use.
  • Test project HelloDotnet successfully run.

If anything is still missing, stop and complete it before moving on. A strong foundation will make the next 22 episodes feel much lighter.

Closing

Key takeaways:

  • Master basic programming concepts and OOP before writing C#.
  • Get comfortable working with the terminal and Git from the start.
  • Install the .NET SDK version 8 LTS or the latest 9, not just the runtime.
  • Pick one editor and learn its debugging features.
  • Verify your installation by creating and running a console project.

In the next episode 1 we will discuss the history, background, and why you need .NET — from the evolution of .NET Framework to .NET Core, the changes to the release model, to its position as an open-source cross-platform platform. Make sure your environment is ready, because the Learn .NET journey has just begun!

Learn .NET - Pre-Requisites Skill & Setup Environment | Learn .NET