📣 Advanced C# concepts that power real systems.
📘 C# Programming – Level 2
Advanced programming concepts that turn C# developers into system builders
🗝️ About This Course
This is the twentieth course in your programming journey, after:
1️⃣ Programming Foundations – Level 1
2️⃣ Algorithms & Problem Solving – Level 1
3️⃣ Introduction to Programming with C++ – Level 1
4️⃣ Algorithms & Problem Solving – Level 1 (Clean Code Solutions)
5️⃣ Algorithms & Problem Solving – Level 2
6️⃣ Introduction to Programming Using C++ – Level 2
7️⃣ Algorithms & Problem Solving – Level 3
8️⃣ Algorithms & Problem Solving – Level 4
9️⃣ Foundations – Level 2
🔟 OOP as it Should Be – Concepts
1️⃣1️⃣ OOP as it Should Be – Applications
1️⃣2️⃣ Data Structures – Level 1
1️⃣3️⃣ Algorithms & Problem Solving – Level 5
1️⃣4️⃣ C# – Level 1
1️⃣5️⃣ Database – Level 1 (SQL: Concepts & Practice)
1️⃣6️⃣ OOP as It Should Be in C#
1️⃣7️⃣ Database – SQL (Projects & Practice)
1️⃣8️⃣ C# & Database Connectivity (ADO.NET)
1️⃣9️⃣ Full Real Project – DVLD
At this point in the roadmap, you already:
🔹 Built strong programming foundations and problem-solving discipline
🔹 Mastered clean code and Divide & Conquer thinking
🔹 Applied OOP concepts correctly in C#
🔹 Designed and queried databases professionally
🔹 Connected applications to databases using ADO.NET
🔹 Built a large real-world system (DVLD) end to end
🔹 Understood architecture, layers, responsibilities, and data flow
Now it’s time to go deeper into C# itself — not syntax, but advanced programming power.
🔐 What Makes This Course Different?
🔹 Focuses on advanced programming concepts, not beginner repetition
🔹 Explains why features exist and when to use them
🔹 Teaches patterns used in real desktop, backend, and enterprise systems
🔹 Builds confidence with events, delegates, multithreading, async, and reflection
🔹 Prepares you for large-scale systems and frameworks later
This course fixes a common gap:
👉 Developers know “how to write C#”, but not how C# works at a deeper level.
📖 What You Will Learn?
By the end of this course, you will be able to:
🔹 Pass data correctly between forms and components
🔹 Design and use User Controls and reusable UI components
🔹 Understand and apply Events and Delegates confidently
🔹 Work with:
▫️ Delegates, multicast delegates
▫️ Func, Action, Predicate
▫️ Lambda expressions (and when to use them)
🔹 Manage resources correctly using:
▫️ using statements
▫️ IDisposable patterns
🔹 Work with:
▫️ Nullable types
▫️ Serialization & deserialization (XML, JSON, Binary)
▫️ Attributes (built-in and custom)
▫️ Reflection for dynamic behavior and metadata
🔹 Understand advanced concepts:
▫️ Mutable vs immutable types
▫️ Generics (methods and classes)
▫️ Operator overloading
🔹 Work with system-level features:
▫️ Windows Registry
▫️ Application configuration (App.config)
▫️ Logging (Event Log)
🔹 Master concurrency:
▫️ Multithreading fundamentals
▫️ Thread synchronization and race conditions
▫️ Async programming and Tasks
▫️ Parallel programming
🔹 Apply:
▫️ Dependency Injection
▫️ Inversion of Control (IoC)
▫️ Open/Closed Principle
🔹 Call Stored Procedures from C# using ADO.NET
🧱 How This Course Is Structured?
🔹 Concepts are introduced step by step
🔹 Each topic is explained, then practiced
🔹 Real examples replace artificial demos
🔹 Topics build on what you already mastered
🔹 Focus stays on clarity, control, and correctness
📌 This course is about depth, not speed.
🧑💻 Who This Course Is For?
✅ Students who completed the full roadmap up to DVLD
✅ C# developers who want advanced programming strength
✅ Backend and enterprise-oriented developers
✅ Developers preparing for frameworks, services, and large systems
✅ Anyone who wants to understand what really happens under the hood
❌ Not for beginners or shortcut seekers
⚠️ What This Course Is NOT?
❌ Not a UI-only course
❌ Not framework-specific (ASP.NET comes later)
❌ Not about memorizing keywords
❌ Not optional for serious C# developers
📌 Weak understanding here leads to fragile and confusing systems later.
🎓 Certification & Learning Outcomes
Upon completion, you will earn a
Certificate in C# Programming – Level 2, validating your ability to:
🔹 Use advanced C# features confidently
🔹 Design scalable and maintainable applications
🔹 Handle concurrency and asynchronous workflows
🔹 Prepare for advanced backend and enterprise development
🎓 Final Outcome
After completing this course, you will:
🔹 Feel confident working with advanced C# concepts
🔹 Write more powerful, flexible, and safe code
🔹 Understand how large C# systems really work
🔹 Be fully prepared for advanced frameworks and platforms
🧠 This course turns C# from a language you use
into a tool you truly control.
Course Content
- What is Cryptography? (5:33)
- Cryptography Quiz
- What is Hashing? (9:37)
- Hashing Example (8:29)
- Hashing Homework
- Hashing Quiz
- What is Symmetric Encryption? (15:31)
- Symmetric Encryption Example (10:06)
- Symmetric Encryption Quiz
- What is Asymmetric Encryption? (10:57)
- Asymmetric Encryption Example (8:30)
- Asymmetric Encryption Quiz
- Encrypt and Decrypt Image Example
- Process vs Thread (18:58)
- Quiz 1
- What is Multithreading? (11:42)
- Quiz 2
- What is Thread Class? (12:53)
- Quiz 3
- Parameterized Thread (4:31)
- Download 3 Web Pages using Multi Threading (11:11)
- What is Race Condition? (6:21)
- Quiz 4
- Introduction to Thread Synchronization (10:24)
- Synchronization Example (9:01)
- Quiz 5
- What is Async Programming? how it's Different from multi threading?
- Quiz 1
- Task Class (9:39)
- Task Class Example 2 (8:29)
- Task Class With Call back Event Example (9:21)
- Task.Run (5:44)
- Quiz 2
- Introduction to Task Factory Class (19:51)
- Quiz 3
- Parallel Class in C# (5:48)
- Parallel.For (7:25)
- Parallel.ForEach (4:05)
- Parallel.Invoke (6:04)
- Quiz4