Last Updated on September 19, 2024
C# (pronounced “See Sharp”) is a multi-purpose computer programming language suitable for a wide variety of development needs.
C# combines the power and flexibility of C++ with the simplicity of Visual Basic. It encompasses strong typing, imperative, declarative, functional, generic, object-oriented (class-based), and component-oriented programming disciplines with support for the concepts of encapsulation, inheritance, and polymorphism. It incorporates many elements of the expression and statement syntax of C, and has a more refined object-oriented programming syntax than C++.
C# is one of the more popular programming languages, but is not as widely used as say C, Java, C++ or PHP.
Here’s our recommended tutorials to learn C#. If you’re looking for something more substantial, check out these free C# programming books.
1. Threading in C# by Joseph Albahari
Learn all about threading in C#.
2. C# Tutorial for Beginners: Learn in 7 Days by Guru99
This tutorial will introduce you to .NET framework using C# language. You will also learn to create a C Sharp based web application using .NET framework. This is a complete online course and covers topics like accessing data, classes & objects, file commands, window forms etc.
3. C# Tutorial by tutorialspoint
This tutorial teaches you basic C# programming and will also take you through various advanced concepts related to C# programming language.
4. The Complete C# Tutorial by csharp.net-tutorials
Consisting of 87 articles covering all the most important C# concepts. This tutorial is primarily for new users of this great technology.
5. C# Tutorial – Full Course for Beginners by freeCodeCamp
This course offers a full introduction into all of the core concepts in C#.
6. C# Programming Basics for Beginners by Satya Jugran
This course is for the ones who want to learn the basic fundamentals of C# programming and get started with C#.
7. C# Tutorial by C# Station
This is a set of lessons suited for beginning to intermediate programmers or anyone who would like to gain familiarity with the C# programming language.
All tutorials in this series:
| Free Programming Tutorials | |
|---|---|
| ABAP | Advanced Business Application Programming | 
| Ada | ALGOL-like programming language, extended from Pascal and others | 
| Agda | Dependently typed functional language based on intuitionistic type theory | 
| Alice | Educational language with an integrated development environment | 
| Arduino | Inexpensive, flexible, open source microcontroller platform | 
| Assembly | As close to writing machine code without writing in pure hexadecimal | 
| Awk | Versatile language designed for pattern scanning and processing | 
| Bash | ‘Bourne-Again-SHell’ is both a shell and programming language | 
| BASIC | Family of general-purpose, high-level programming languages | 
| C | General-purpose, procedural, portable, high-level language | 
| C++ | General-purpose, portable, free-form, multi-paradigm language | 
| C# | Combines the power and flexibility of C++ with the simplicity of Visual Basic | 
| Chapel | Parallel-programming language in development at Cray Inc. | 
| Clojure | Dialect of the Lisp programming language | 
| ClojureScript | Compiler for Clojure that targets JavaScript | 
| COBOL | Common Business-Oriented Language | 
| CoffeeScript | A very succinct programming language that transcompiles into JavaScript | 
| Coq | Dependently typed language similar to Agda, Idris, F*, Lean, and others | 
| Crystal | General-purpose, concurrent, multi-paradigm, object-oriented language | 
| CSS | CSS (Cascading Style Sheets) specifies a web page’s appearance | 
| D | General-purpose systems programming language with a C-like syntax | 
| Dart | Client-optimized programming language for fast apps | 
| Dylan | Multi-paradigm language, supports functional & object-oriented programming | 
| ECMAScript | Best known as the language embedded in web browsers | 
| Eiffel | Object-oriented language | 
| Elixir | Relatively new functional language that runs on the Erlang virtual machine | 
| Elm | Functional language that compiles to JavaScript | 
| Emacs Lisp | A dialect of the Lisp programming language. | 
| Erlang | General-purpose, concurrent, declarative, functional language | 
| F# | General purpose, strongly typed, multi-paradigm language. Part of ML | 
| Factor | Dynamic stack-based language | 
| Forth | Imperative stack-based programming language | 
| Fortran | The first high-level language, using the first compiler | 
| GDScript | Godot’s built-in language for scripting and interacting with nodes | 
| Go | Compiled, statically typed programming language | 
| Groovy | Powerful, optionally typed and dynamic language | 
| Hack | For the HipHop Virtual Machine (HHVM), created as a dialect of PHP | 
| Haml | HTML Abstraction Markup Language | 
| Haskell | Standardized, general-purpose, polymorphically, statically typed language | 
| HTML | HyperText Markup Language | 
| Icon | High-level, general-purpose language | 
| Imba | Full-stack language that compiles to performant JavaScript | 
| J | Array programming language based primarily on APL | 
| Java | General-purpose, concurrent, class-based, object-oriented, high-level language | 
| JavaScript | Interpreted, prototype-based, scripting language | 
| Julia | High-level, high-performance language for technical computing | 
| Kotlin | Statically typed, general-purpose programming language with type inference | 
| LabVIEW | Designed to enable domain experts to build power systems quickly | 
| LaTeX | Professional document preparation system and document markup language | 
| Less | Backwards-compatible language extension for Cascading Style Sheets | 
| Limbo | Designed for applications running distributed systems on small computers | 
| Lisp | Unique features - excellent to study programming constructs | 
| Logo | Dialect of Lisp that features interactivity, modularity, extensibility | 
| Lua | Designed as an embeddable scripting language | 
| Markdown | Plain text formatting syntax designed to be easy-to-read and easy-to-write | 
| MoonScript | Dynamic scripting programmer friendly language that compiles into Lua | 
| Nim | Statically typed compiled systems language with syntax resembling Python | 
| Objective-C | General purpose language which is a superset of C | 
| OCaml | General-purpose, powerful, high-level language | 
| Octave | High-level language, primarily intended for numerical computations | 
| OpenCL | Open Computing Language | 
| Pascal | Imperative and procedural language designed in the late 1960s | 
| Perl | High-level, general-purpose, interpreted, scripting, dynamic language | 
| Pike | Interpreted, general-purpose, high-level, cross-platform, dynamic language | 
| PHP | PHP has been at the helm of the web for many years | 
| Pony | Pony is an actor-model, capabilities-secure, high-performance language | 
| PostScript | Page description language in electronic and desktop publishing | 
| Prolog | General purpose, declarative, logic programming language | 
| PureScript | Small strongly, statically typed language with expressive types | 
| Python | General-purpose, structured, powerful language | 
| QML | Hierarchical declarative language for user interface layout with a syntax to JSON | 
| R | De facto standard among statisticians and data analysts | 
| Racket | Platform for programming language design and implementation | 
| Raku | Member of the Perl family of programming languages | 
| Roff | Extensible text formatting language and a set of programs for printing | 
| Ruby | General purpose, scripting, structured, flexible, fully object-oriented language | 
| Rust | Ideal for systems, embedded, and other performance critical code | 
| Scala | Modern, object-functional, multi-paradigm, Java-based language | 
| Scheme | General-purpose, functional, language descended from Lisp and Algol | 
| Scratch | Visual programming language designed for 8-16 year-old children | 
| Solidity | Object-oriented, high-level language for implementing smart contracts | 
| SQL | Access and manipulate data held in a relational database management system | 
| Standard ML | One of the two main dialects of the ML language | 
| Swift | Powerful and intuitive general-purpose programming language | 
| Tcl | Dynamic language based on concepts of Lisp, C, and Unix shells | 
| TypeScript | Strict syntactical superset of JavaScript, adding optional static typing | 
| V | Statically typed compiled language to build maintainable software | 
| Vala | Object-oriented language with a self-hosting compiler that generates C code | 
| VHDL | Very High Speed Integrated Circuit Hardware Description Language | 
| VimL | Powerful scripting language of the Vim editor | 
| XML | Set of rules for defining semantic tags that describe the structure and meaning | 
| Zig | General-purpose programming language and toolchain | 
