Module 1: C# Essentials
1. Introduction to .NET
What is .NET?
.NET Framework vs. .NET Core vs. .NET 6
Application models: Console, GUI, Web, Cloud
Visual Studio 2022 overview
Managed code and the CLR
2. C# Overview for Experienced Programmers
Writing your first C# console app
Namespaces, data types, conversions
Control structures, functions, string handling
Arrays, implicitly typed variables, exception handling
Console I/O and formatting
3. Object-Oriented Programming in C#
Classes, properties, access control
Static members, readonly fields, constants
Inheritance and method overriding
Abstract, sealed classes, and assemblies
4. C# and .NET Integration
Working with components, interfaces, and collections
Copy semantics, generics, type safety
Object and collection initializers, anonymous types
Attributes and .NET type system
5. Delegates and Events
Understanding delegates, anonymous methods, and lambdas
Implementing events and event handlers
6. Windows Forms Introduction
Building Windows apps with Visual Studio
Controls: buttons, labels, textboxes, listboxes
Handling UI events and user interaction
7. Modern C# Features
Dynamic types, named/optional arguments
Generic interface variance, async/await
Nullable reference types, record types
Top-level statements and newer syntax from C# 6–10
Module 2: .NET Foundations
1. .NET Fundamentals
Overview of the CLR and FCL
Language interoperability in .NET
Cross-platform development with .NET 6 and .NET 7
2. Class Libraries and Components
Building and referencing class libraries
Visual Studio tools for managing assemblies
3. Frameworks, Packages, and NuGet
.NET implementations, .NET Standard, and metapackages
Using NuGet: searching, installing, and creating packages
Porting from .NET Framework to .NET 6/7
4. Metadata and Reflection
Metadata in .NET
Reflection and late binding in dynamic applications
5. I/O and Serialization
Working with directories, files, and streams
Introduction to XML serialization
6. The .NET Programming Model
Garbage collection, IDisposable pattern
Command-line arguments, working with processes
Basic threading concepts
7. Multithreading with .NET
Foreground vs. background threads
ThreadPool and synchronization
Task Parallel Library (TPL) basics
Appendices
A. Visual Studio 2022 Tutorial – Setup, debugging, project management
B. LINQ Overview – Filtering, ordering, aggregation in collections
C. Unsafe Code and Pointers in C# – Working in an unsafe context
D. Learning Resources – Recommended reading and tools