JavaRush/Courses/C# Course

C# Course

Want to master C# and enter the Microsoft ecosystem? You’ll go from your first program to enterprise development on C# and .NET. 68 levels of practice: OOP, asynchrony, multithreading, LINQ, file handling. Hundreds of tasks with instant grading. From console applications to being ready to work at top companies. C# — the basis of Unity game development!
4.9
500+ reviews
30k graduates built careers in IT
  • Commands and the first program
  • Introduction to types int and string. Keyboard input
  • Conditional statement
  • Loops
  • Setting up the IDE, the JavaRush plugin, basics of debugging
  • Floating-point numbers
  • Arrays
  • Functions / Methods
  • Advanced string operations
  • Constants, the keyword var, basic arithmetic operators
  • Nullable Reference Types (NRT)
  • Exceptions try, catch, finally
  • enum, switch, and pattern matching
  • Value tuples (Value Tuples) and local functions
  • Working with dates, time and time zones
  • Classes, Objects and Constructors
  • Access Modifiers and Properties
  • Indexers and Extension Members (C# 14)
  • Records – Immutable data types
  • Inheritance and Class Hierarchies
  • Polymorphism
  • Abstraction
  • Interfaces: Basics and Contracts
  • Advanced Interfaces: Default Interface Methods and Static Members
  • Common mistakes and OOP best practices
  • Introduction to version control: working with Git and GitHub
  • Module final project
  • Collection types and Generics
  • Core collection interfaces (IEnumerable, IList, IDictionary)
  • Collection methods: sorting, filtering, searching
  • Comparators and object comparison
  • LINQ basics: simple queries and data filtering
  • Advanced LINQ: grouping and aggregate functions (with new methods in .NET 9)
  • Advanced LINQ: joins and projections
  • Optimizing collections and high-performance types
  • Basics of file handling in C#
  • Reading and writing files (StreamReader, StreamWriter)
  • Working with file encodings
  • Error handling and security when working with files
  • Working with the file system (File, FileInfo, Directory, DirectoryInfo)
  • Managing files and directories (create, copy, delete, move)
  • I/O optimization (BufferedStream and other methods)
  • Asynchronous file operations (ReadAsync, WriteAsync and others)
  • Concepts of data serialization and deserialization
  • Classes and libraries for serialization in .NET
  • Serialization and deserialization of objects
  • Serialization of collections and complex objects
  • Working with JSON data
  • Working with XML data
  • Lambda expressions in C#
  • Relationship between lambda expressions and delegates
  • Fundamentals of functional programming: anonymous functions, higher-order functions
  • Events in C#: concept, creation and handling, and EventHandler
  • Event lifecycle: subscribing, unsubscribing, management
  • Best practices for event-delegate programming
  • Multithreading basics in C#: creating and managing threads
  • Thread synchronization and shared resource management
  • Common multithreading issues: race conditions, deadlocks
  • Asynchronous programming: async, await, asynchronous methods
  • Using tasks (Task) and parallel computations (Parallel.For, Parallel.ForEach)
  • Error and exception handling in multithreaded and asynchronous code
  • Advanced synchronization mechanisms
  • Deep dive into asynchrony (ValueTask, Channel, testing asynchronous code)
  • Basics and syntax of regular expressions
  • Practical use of regular expressions with the Regex class
  • Reflection, dynamic types and Source Generators
  • Logging, monitoring and tracing
  • Overview of key improvements in .NET 9 and future trends
300+
Lectures
400+
Tasks
68
Tests
Also:
  • Instant grading
  • AI code validator
  • IDE plugin
  • WebIDE
  • Gamification
  • Motivational lectures