The Best C# Tutorials

Learn C#: Tutorials for Beginners, Intermediate, and Advanced Programmers

Angela Stringfellow Developer Tips, Tricks & Resources Leave a Comment

If you’re a beginner developer or someone looking to learn a new language, C# is a great choice for a number of reasons. Unlike C++, for instance, C# offers automatic memory management, and it also offers solid Type Safety compared to JavaScript and node.js. C# has robust base class libraries; the .NET framework includes hundreds of libraries for working with the file system, managing security, and more.

Microsoft heavily supports C#, issuing fixes and updates rapidly – so it’s a more readily updated language compared to other languages, such as Java. Like Java, C# is one of the most popular programming languages, and as such, it has a large, active user community, making it easy to find troubleshooting solutions and coding help on StackOverflow and other online communities.

With the release of .NET Core, we think that C# and .NET Core will be in huge demand in 2018. Be sure to check out our article on why .NET Core is the next big thing.

Programming languages have come a long way in terms of being easy to learn and understand. C# is a versatile programming language, and after learning it, you can apply your skills to a variety of things. With C#, .NET, and Visual Studio, you can build an endless variety of applications, from web apps to mobile apps, REST APIs, and more. Whether you’re learning C# for the first time or ramping up your C# expertise, we’ve rounded up 30 of the best tutorials for both beginners and advanced programmers to get you started.

30 of the Best C# Tutorials

1. Tutorials Teacher

Tutorials Teacher

 

This tutorial is from Tutorialsteacher.com, which features free online web technology tutorials for beginners and professionals alike. In addition to C#, you can also learn LINQ, ASP.NET MVC, jQuery, JavaScript, AngularJS, or Node.js. This C# course is especially interesting because it goes straight into programming after a brief version history and setup.

Key Topics:

  • Data types, classes, and variables
  • Switches and loops
  • Strings and arrays
  • Stream I/O

2. Lynda.com – Learning C#

@Lynda

Lynda

 

In this tutorial by author Gerry O’Brien, topics covered include core language elements such as data types, variables, and constants. It also features a short tour of two fully-functional Windows Phone and Windows Store apps to motivate you. There are also five challenge videos that allow you to test yourself, along with another five videos that explain the answers.

Key Topics:

  • Working with loops
  • Building functions
  • Catching errors
  • Managing resources with the garbage collector

Free Download

3. C# Station

C# Station

 

The C# Station Tutorial is a set of lessons suited for a beginner to intermediate-level programmers who are ready to learn hands-on with a compiler and an editor. Topics cover everything from the basics right up to Polymorphism and Overloading Operators.

Key Topics:

  • Expressions, Types, and Variables
  • Namespaces
  • Introduction to Classes
  • Indexers and Attributes
  • Working with Nullable types

4. Deccansoft -C# Training

@deccansoft

Deccansoft

 

This series of tutorials from Deccansoft is led by Mr. Sandeep Soni, a Microsoft Certified Trainer, and cover almost all C# topics from the ground up. Each concept is explained at length using different walkthroughs and practical approaches. The entire course is quite lengthy and features 26 modules split up into about 83 hours of video! It is advisable to have a working knowledge of any one programming language before you take this course.

Key Topics:

  • .NET Framework
  • Concepts behind CLR (Common Language Runtime)
  • Building a standard GUI for Windows based applications using WinForms.
  • Developing scalable applications using multithreading features of .NET

5. edX – Programming with C#

@edXOnline

edX

 

This tutorial comes from edX, an online educational services provider which also offers some courses from top universities and colleges. This is not a beginner’s course and requires you to have a prior understanding of programming concepts. This tutorial by Gerry O’Brien is better-suited for existing programmers who want to learn a bit more about C# and the .NET environment.

Key Topics:

  • The C# syntax
  • C# language fundamentals
  • Object oriented programming
  • The .NET Framework concept

6. Microsoft Virtual Academy – C# fundamentals for absolute beginners

@MSLearning

Microsoft Virtual Academy

 

This C# tutorial from none other than Microsoft takes you through 24 practical and easy-to-understand episodes with Bob Tabor from the Developer University. Apart from teaching you the fundamentals of C#, this course also covers the tools, how to write code, debug features, explore customizations, and more. The cool thing is that each topic is a separate video that’s quite straightforward. This course also teaches you to apply your C# skills to video games and mobile apps.

Key Topics:

  • Creating and understanding your first C# program
  • Understanding Data types and Variables
  • Understanding Arrays
  • Working with Strings
  • Learning how to work with Date and Time data

7. Tutorials Point – Basic and Advanced C#

@tutorialspoint

Tutorials Point

 

Tutorialspoint, which is quite a popular online destination for learning, has 2 tutorials on C#, one for beginners and another for more advanced programmers. Both are great learning resources, and between the two, they cover the basics of C# programming and also delve into more advanced C# concepts. These are text-based guides with step-by-step instructions and examples.

Basic Key Topics:

  • Program structure
  • Decision making
  • Encapsulation
  • Exception handling
  • File I/O

Advanced Key Topics:

  • Reflection
  • Indexers
  • Unsafe code
  • Multithreading

8. Udemy – C# Programming projects for beginners

@udemy

Udemy C# Programming for Beginners

 

Udemy is one of the largest online learning platforms with thousands of courses and a big budget to spend on advertising. If you watch YouTube videos or even just browse the web, you’ve likely come across their advertisements. While the website has many video tutorials on C# programming, the good ones aren’t free but aren’t unreasonably expensive either. This particular course helps students think like programmers and learn C# practically by working on programming projects. The course consists of about 49 lectures and is just under 9 hours in length.

Key Topics:

  • Practicing loops, arrays, and structures
  • Start coding beginner projects immediately
  • Thinking like a programmer
  • Using the right approach

9. LearnCS.org

LearnCSharp.org

 

This is a free online interactive tutorial for C#. In fact, the entire website is dedicated exclusively to teaching C#. This site is different in its teaching approach in the sense that it teaches you with two windows, one for code and one for your output.

Key Topics:

  • Variables and types
  • Dictionaries, strings, and loops
  • Methods
  • Classes and class properties

10. Abbot – C# Tutorial

@janbodnar

C# Tutorial

 

This all-text tutorial from Zetcode focuses on both basic and advanced topics and is suitable for beginners and advanced programmers alike. This tutorial covers the basics like loops, strings, and arrays and then moves on to more complicated stuff like delegates, namespaces, and collections. It also covers the new features of C# 4.0.

Key Topics:

  • Data types
  • Strings
  • Lexical structure
  • Flow control
  • Delegates
  • Namespaces
  • Collections

11. Channel 9 – Programming in C# Jump Start

@ch9

Udemy Programming in C#

 

What they mean by “Jump Start” fashion is that every topic of this course is example-driven and illustrated by Microsoft’s Jerry Nixon and the co-founder of Crank211, Daren May. The key to this tutorial is repetition as the duo work with multiple examples in real-time to make sure you get the most from the experience. There are some videos in the Jump Start series, and the topics get more advanced as you progress.

Key Topics:

  • Basics of object oriented programming
  • Fundamentals of a managed language
  • Why C# is the best for OOP
  • C# Syntax

12. Java2s – C# Tutorial

C# Tutorial

 

More popularly known as a place that indexes Java examples, java2s.com has a good C# tutorial as well. This is quite an in-depth tutorial, starting with language basics and moving on to graphics, designs, XML, .NET frameworks, networking, directory services, and security.

Key Topics:

  • Language basics including predefined exceptions, parameter throw, and parameter reference
  • Data types including boolean, decimal, and bitwise
  • Operators including shift, arithmetic, shortcut, short circuit, bitwise, and ternary operators
  • Windows, XML, and XML LINQ

13. JKU – C# Tutorial

JKU

 

This two-part course is by Hanspeter Mössenböck from the University of Linz. It is a C# tutorial for programmers who are already familiar with Java or similar languages. It starts out with basic C# features such as types, expressions, statements, and object-orientation, and continues with more advanced features like threads, attributes, namespaces, and assemblies. It also briefly goes over .NET’s base class library.

Key Topics:

  • Overview, types, and expressions
  • Declarations and statements
  • Classes and structs
  • Namespaces, assemblies, and XML comments

14. Eduonix – Learn C Sharp Programming From Scratch

@Tutor_Eduonix

Eduonix

 

This course is by Eduonix, a premier online institution, and the C# course is an instructor-led video that covers basic programming structures, LINQ, C# network programming, and more. A bonus to doing this course is the option to get certified on completion.

Key Topics:

  • Introduction to C#
  • Iteration and Jumps
  • Object Oriented Programming
  • LINQ and C # Network Programming

15. SoloLearn – C# Tutorial

@SoloLearn

Sololearn

 

This tutorial from Sololearn.com is fun and teaches C# concepts by going through short interactive texts, games, and quizzes. The instructors believe in a hands-on approach and that the best way to learn to code is to practice coding. A well-designed code editor lets you make changes to existing code and see the output on your mobile device. The games are especially useful since they’re fun, and the more you play, the better you get!

Key topics:

  • Basic concepts including variables, printing, and arithmetic operators
  • Conditions, loops, and methods
  • Arrays and strings
  • Inheritance, polymorphism, and generics

16. RB Whitaker – A C# Crash Course

@rb_whitaker

RB Whitaker

 

This is a list of over thirty tutorials by RB Whitaker, a software developer at Autonomous Solutions, Inc. (ASI). This course is quite extensive and covers everything from the basics to generics, error handling, and more. The author encourages you to skip over parts that you are already familiar with, meaning you can get through this course more efficiently if you’re not a novice.

Key Topics:

  • Introduction, installation, and your first C# program
  • Math, more math, decision making, and looping
  • Inheritance, polymorphism, generics, and error handling

17. HyperionDev – C# Programming Essentials

@HypDev

Hypdev

 

This is a three- to six-month part-time micro-degree from hyperiondev.com. It’s not free, but it is CSA accredited, making it worth consideration. This micro-degree is for beginners with no programming experience and features one-on-one pairing with a mentor as well as additional career guidance and placement advice on completion.

Key Topics:

  • Introduction to C#
  • Control statements
  • Craps game to assess knowledge of prior task
  • Data structures, files, and functions

18. TheNewBoston

@TheNewBoston

The New Boston

 

This set of coding tutorials created by Bucky Roberts on his YouTube channel called TheNewBoston is especially popular. It is currently one of the most popular computer/technology related channels on YouTube, with close to 900,000 subscribers and over 200 million views.

Key Topics:

  • Overview of C#
  • Where to download Visual C# 2010 Express edition
  • Installation
  • Basics of C# Programming

19. PluralSight – C# fundamentals with C# 5.0

@pluralsight

Pluralsight

 

At the moment, Pluralsight has over six courses dedicated to C# programming. This particular course is about six hours long and has a 4.5-star rating across close to 5,000 user surveys. The tutorial is by Scott Allen, a Microsoft MVP who has authored several books on ASP.NET, C#, and Windows Workflow.

Key Topics:

  • Basic setup and introduction to .NET, CLR, and FCL
  • Editing, compiling and debugging
  • Classes and objects in C#
  • Flow control and object oriented programming

20. Udemy – C# Basics for Beginners: Learn C# Fundamentals by Coding

@udemy

Udemy C# Basics for Beginners

 

This is another tutorial from Udemy. It’s not just for beginners but also for students looking for a refresher course in C# and .NET. It focuses more on a programming mindset and uses videos, real-world examples, and lots of exercises. With 4.6 stars from 7,515 ratings and 30,380 students enrolled, this course by Mosh Hamedani is a great way to learn the fundamentals of C# and .NET Framework.

Key Topics:

  • Fundamentals of coding
  • Working with date and time
  • Debugging
  • Classes, interfaces, and object oriented programming

21. Java T Point – C# Tutorial

@JavaTpoint

JavaTPoint

 

This C# tutorial from javatpoint.com is quite extensive and comes with a prerequisite that you have a basic working knowledge of C. Like most other courses, it starts off very basic and then goes into detail in the later chapters. What makes this one different, however, is that it’s quite student-oriented and features comparisons with Java, interview questions, and an additional ASP.NET tutorial.

Key Topics:

  • History and introduction
  • Control statement, functions, arrays, and object classes
  • Properties, inheritance, polymorphism, and abstraction
  • Namespaces, strings exception handling, file IO

22. Microsoft – Getting started with C#

@Microsoft

This is a fun little tutorial from Microsoft and is different from all the others as it’s customizable. You can choose your degree of difficulty before you start by selecting whether you are a beginner or have previous programming experience. It also lets you choose the languages you already know and then modifies your course accordingly.

Key Topics:

  • Writing your first hello world program
  • Strings, looping, dates, and times
  • Arrays, collections, and calling methods
  • Namespaces
  • Testing your code and troubleshooting

23. Brackeys

@BrackeysTweet

Brackeys

 

YouTube videos are a great way to learn to program, and Brackeys is a YouTube channel that specializes in game development tutorials. However, he has a pretty decent and in-depth introductory C# series that is quite popular as well.

Key Topics:

  • Introduction and basics
  • Variables, If and Switch statements
  • Classes, Inheritance, and enums
  • Properties, interfaces, and Generics

24. Complete C# Tutorial

Complete C# Tutorial

 

This tutorial is from CompleteCsharpTutorial.com and is essentially is a list of free tutorials ranging from C# to SQL, RAZOR Syntax, ASP.NET, Java, and CSS. The site is really well organized, and each topic opens up into about five sub topics that you can choose from. Each topic is short and sweet and does a good job of explaining things without wasting a lot of time.

Key Topics:

  • Variables and data types
  • Operators and Conditional constructs
  • C# Statements, loop constructs, and exception handling
  • Inheritance, polymorphism, and generics

25. Guru99 – C# Tutorial

@guru99com

Guru99

 

This is an introductory tutorial into the .NET framework using the C# language. It also covers various topics like accessing data, classes & objects, file commands, and Windows forms. This is not a beginner’s course, and a basic understanding of C is required.

Key Topics:

26. Certification Guru – C# .NET Programming

@mycertguru

C# .NET Programming

 

This course from CertificationGuru.in provides a solid foundation and covers the fundamentals skills required to design and develop object-oriented applications. This course especially focuses on developing apps for the Web and Microsoft Windows using Microsoft Visual C#, .NET, and the Microsoft Visual Studio .NET development environment. Another plus is that this class is intended for beginners with little or no knowledge or C# or .NET. Training is conducted live in virtual classrooms by Microsoft-certified trainers with over a decade of training experience.

Key Topics:

  • .NET framework architecture
  • Event driven programming
  • Lambda expressions
  • Exception handling
  • Deployment

27. Lynda – C# 6.0 First Look

@lynda

Lynda

 

This tutorial at Lynda.com is all about getting a firm grasp of the new features in C# 6.0. The course is conducted by Reynald Adolphe, who takes you through all the new features like new expression-level features, extension add methods, null-conditional operators, and much more. The enhanced IDE (with IntelliSense syntax) and improved debugging features in Visual Studio 2015 is also covered.

Key Topics:

  • Introducing the new IDE in Visual Studio 2015
  • Leveraging nameof expressions
  • Using index initializers
  • Using await in catch and finally blocks
  • Using static and debugging

28. Alison – Diploma in C# Programming

@AlisonCourses

Alison Diploma in C# Programming

 

This free online course is published by Channel 9 and begins with showing you how to properly install Visual Studio Express, followed by a tour of the features and functions of the Visual Express Integrated Development Environment (IDE). Next, comes the .NET Framework and how C# can be used to create .NET applications.

Key Topics:

  • Installing Visual Studio Express
  • Write basic code and reviewing for errors
  • Creating branches with the if decision statement and the conditional operator
  • Correct syntax for operators, expressions, and statements of duration

29. Coursera – Beginning Game Programming with C#

@coursera

Coursera

 

The Beginning Game Programming with C# course from Coursera.org is all about learning how to develop games in C#. This is an advanced course, so while it’s not impossible to jump right in, it might be a bit frustrating for beginners. C# is great for games because it lets you use the open-source MonoGame framework used to make games for Windows, Android, iOS, and Mac OS X. C# can also be used with the Unity game engine, which is very popular among indie game developers.

Key Topics:

  • Course Introduction, First C# Program, and Storing Data
  • Classes and Objects, MonoGame/XNA Basics
  • MonoGame/XNA Mice and Controllers, Arrays, and Collection Classes
  • Class Design and Implementation

30. Udemy – Learn to Code by Making Games – Complete C# Unity Developer

@udemy

Udemy Learn to Code by Making Games

 

This is another great course from Udemy, and it’s different in the sense that it’s a gaming course for beginners in which you learn C# while building interesting games on the Unity engine. The plus side here is that it makes learning C# fun and interactive while also teaching you about the Unity engine. The course is 100% project-based, so you will not just be learning theory but actually creating real indie games as you go. The entire course syllabus consists of names of indie games, and for each demo game you build, you are given a set of challenges. The key topics here are especially interesting.

Key Topics:

  • Number Wizard: Basic Scripting
  • Laser Defender
  • Glitch Garden: A Plants vs. Zombies Clone
  • Block Breaker
  • Zombie Runner FPS

C# is still one of the most widely-used programming languages out there today. With exception to Java, C# is a powerful programming language with the widest array of functions and uses. It is a multifunctional language that allows developers to create almost anything, ranging from server apps to mobile development to 3D games. C# 7.0 will be released later this year, and with the number of tutorials online, now’s as good a time as ever to start learning.

Once you’ve become a C# guru, check out our other resources on the popular programming language, such as logging best practices for .NET, exception handling best practices, how to find and handle unhandled exceptions, and more. Need a code coverage tool? We’ve got you covered there, too, in this post.