🎓 Welcome to Intermediate C#
Take your C# from "I can write programs" to "I can build real, robust applications." This course builds directly on Introduction to C#, covering the tools and techniques professional developers use every day.
📚 About This Course
You already know variables, control flow, methods, collections, and object-oriented programming — including inheritance, interfaces, and polymorphism. This course picks up exactly where Introduction to C# left off and turns that foundation into practical, real-world skill.
You'll learn to handle errors gracefully, write reusable generic code, query data elegantly with LINQ, use modern C# language features, work with files and JSON, write asynchronous code, call web APIs, and test what you build — finishing with a capstone that pulls it all together.
What You'll Learn
- Handle failures gracefully with exceptions, and write type-safe reusable code with generics
- Choose and use the right collection: dictionaries, sets, queues, and stacks
- Pass behavior around with delegates and lambdas, and react to events
- Query and transform data expressively with LINQ
- Write concise, null-safe code with records, pattern matching, and nullable reference types
- Read and write files, and serialize objects to and from JSON
- Keep applications responsive with
async/await - Call web APIs with
HttpClientand write unit tests for your code - Combine everything into a complete, well-structured application
Who This Course Is For
- Learners who finished Introduction to C# (or equivalent)
- Developers comfortable with C# basics and OOP who want practical, job-ready skills
- Anyone ready to move from writing small programs to building real applications
📖 Course Modules
Module 1: Writing Robust Code
Handle failures gracefully and write reusable, type-safe code.
Module 2: Functional-Style C#
Pass behavior around with delegates, react to events, and query data with LINQ.
Module 3: Modern Language Features
Write concise, expressive, null-safe C# with records, pattern matching, and nullable reference types.
Module 4: Data and I/O
Read and write files, serialize to JSON, and keep apps responsive with async.
Module 5: Real-World C# and Quality
Call web APIs, test your code, and build a complete application.
✅ Prerequisites
Before starting this course, you should be comfortable with:
- C# fundamentals: variables, data types, operators, and console I/O
- Control flow (
if/switch, loops) and writing methods - Collections (arrays and
List<T>) - Object-oriented programming: classes, objects, inheritance, interfaces, and polymorphism
All of this is covered in Introduction to C# — if any of it feels shaky, review it first.
Required Software
- The .NET SDK (same setup as the intro course)
- A code editor: VS Code with the C# Dev Kit, or Visual Studio
📚 Additional Resources
Official Documentation
Useful Links
Support
If you have questions or need help:
- Visit the contact page
- Community Q&A: Stack Overflow (C# tag)