Set Reminder Save for later

C# Intermediate

Classes, Interfaces and OOP

Whether you want to use C# to build web apps, mobile apps, desktop apps or games, understanding C# classes, interfaces and principles of object-oriented programming is crucial.

This course is the second part of Mosh's best-selling C# series and is all about classes, interfaces and object-oriented programming. In essence, you'll learn:

  • How to work with classes, constructors, fields, properties, methods and indexers
  • How to use encapsulation to reduce the impact of change
  • How to improve the robustness of your code
  • How to re-use code using inheritance and composition
  • Why composition is better than inheritance
  • How to build extensible applications using polymorphism
  • How to develop loosely-coupled, extensible and testable applications using interfaces

Why would you want to take this course?

The answer is simple: quality of teaching.

Mosh is a passionate software engineer with over 13 years of experience developing applications in C#. He is the author of several best-selling C# courses on Udemy and knows how to lead you through a series of baby steps in a logical way.

So, from the very beginning to the very end, you'll be confident that you'll be in good hands and watching every minute of the course, unlike the reading many free tutorials and videos, does not waste your precious time.

Each section is equipped with a balanced mix of theory and practice. At the end of each section you'll get exercises to master the concepts you learn in that section.

And one last reason: all videos are produced with high quality video/audio, to provide you the best learning experience.

I owe a lot of it to you because your courses have been May God bless you and your efforts to create high quality courses. This has really changed my life from working as a security guard and doing websites for free, now I am a professional." -Danish Jafri

"Your courses have given me the confidence to get out of my dead end job and apply for a full time coding job. I am very happy to say that I just finished the job interview and they gave me the job. " -Dan Farnell

"Outstanding quality. I have come to learn that all Mosh's courses are top notch. This course is no different. The content is beautifully designed, well organized with great examples, and delivered in a clear and concise manner (with great video and audio quality). I also loved that this course includes exercises. Fantastic stuff. " -Roger Sæle

"Love it. This guy definitely knows what he's talking about. He strives to make his courses as comprehensive as possible and he teaches you several tricks along the way." -Jeb Watson

"As with all of his courses his passion and love for programming is infectious. He does a great job of intermixing theory with hard examples and cautions with practicality. If you learn better by watching and examples then reading and theory this is a must watch to move beyond the learning the syntax of c#." -Michael Paul

"Excellent course. All of Mosh's courses are very much worth taking if you really want to learn C# in a professional way. Not only does Mosh clearly describe the syntax of the language and explain the language concepts, but he also constantly emphasizes the importance of good programming practices" -Tony Zampini

NET Framework in 2002). Mosh is a full-time developer and what you are going to learn in this course is the result of his day-to-day work as a hardcore programmer along with years of studying,

100% MONEY- Take the course, go through the lectures, do the exercises, and if you're not happy, ask for a refund within 30 days. All your money back, no questions asked.

So do you want to take your C# skills to the next level? Then take this course now and get started.

Get Details and Enroll Now

OpenCourser is an affiliate partner of Udemy.

Get a Reminder

Not ready to enroll yet? We'll send you an email reminder for this course

Send to:


Rating 4.5 based on 5,429 ratings
Length 6 hours
Starts On Demand (Start anytime)
Cost $10
From Udemy
Instructor Mosh Hamedani
Download Videos Only via the Udemy mobile app
Language English
Subjects Programming
Tags Programming Languages Development

Get a Reminder

Get an email reminder about this course

Send to:

What people are saying

We analyzed reviews for this course to surface learners' thoughts about it

visual studio in 63 reviews

The instructor tries to be complete but he relies too much on Resharper, a tool that is not included with Visual Studio and costs extra.

Mosh provided his lecture visual studio files for reference.

It is also pretty annoying to be constantly bombarded with his advertising for third party software called resharper, especially when all the features of resharper are available now by default both in visual studio and visual studio code.

This makes sense, but Visual Studio tells me i cant do this, because I am missing a type or namespace.

In general you have shown how you create every project example you have shown on visual studio.

(My only niggle is this: not all companies/ projects permit the use of 3rd party tools such as Resharper for various reasons, thus new devs do need to learn to use Visual Studio as is and not become dependent on 3rd party tools like Resharper, but that's a minor thing.)

Its great to jump into the visual studio for every topic .

I wish there was not so much use of "resharper", and that it would stick to vanilla Visual Studio.

object oriented programming in 58 reviews

Right now I know more about the inheritance and the most important the use of interfaces in object oriented programming with C#.

Very useful in highlighting the strength of object oriented programming, doesn't necessarily have to be applied to C# Very good course with examples, code snippets and exercises to do.

What every C# programmer absolutely must know about object oriented programming.

When I read about C# I always end up with questions related to object oriented programming as to why are things done, when should things be done, how things could be done better, etc.

Mosh has brought object oriented programming all together for me and made my understanding of it more clearer now.

This course help me really understand the implementation of the object oriented programming.

Excellent course, a real eye-opener for me on object oriented programming.

The concepts of object oriented programming are explained very clear.

step by step in 40 reviews

The step by step approach he takes in teaching is phenomenal.

Mosh goes step by step and makes sure that he teaches the most important aspects of C#.

I like how the instructor explained everything step by step, it is definitely useful for a beginner like me.

But other than that one lecture, every other lecture was well explained step by step and the structure of the course built on itself which was awesome as well.

I like how we go step by step to get to an easier way of doing things.

Good pacing Too fast The statements are clear and step by step.

It guides you step by step in order to become a better programmer!

Step by step am becoming a c# developer ) Just need more practice in real world Thank you Mosh again!

clean code in 19 reviews

I've already bought your other courses (C# Advanced, unit testing with C#, How to write a clean code, ASP.NET MVC), so excited!!

I started by looking at Mosh's Learn the Art of Writing Clean Code.

Mosh more so focuses on good programming technique and clean code.

He not only goes over the topics, but explains how to write clean code.

I got lots of insights in how C# functions, and how to think about design in order to get loosely coupled clean code Concepts are good and clear.

I have to say, the use of the word "var" is the complete opposite of "clean code".

He shows how to write a clean code.

The instructor will review your code and suggest how to write a good clean code.

dependency injection in 15 reviews

I wish there was more explanation on Dependency Injection.

Clear and concise overview of oop Good real world examples One issue is that loose coupling/dependency injection overused - building hugely complicated code to accommodate every possible future scenario as opposed to building simple but easily refactored/extensible code as per app requirements.

I have been struggling to get hold of the the concepts like Dependency Injection and Loose Coupling for years.

I went into this course with some confusion as to how Interfaces worked, as well as concepts like Dependency Injection, Dependency Inversion, etc.

He also covers several design principles, such as favoring interfaces over inheritance, the open closed principle (OCP), and dependency injection.

i ll hope more please very interesting asp mvc, ef, dependency injection Very good course.

The explanation of dependency injection and putting to rest the multi-inheritance arguement This course helps to master the OOP very easier.

The explanation of dependency injection and putting to rest the multi-inheritance arguement I found this course very helpful, occasionally maybe a bit fast with coding, but still followable (And there is a stop button on the videos ;) ).

eye opener in 14 reviews

The sections on Composition were real eye openers.

Thank you Mosh Hamedani I would say its an eye opener for anyone wanting to learn c# more.

The implementation of the interface, the open, close software design principle are eye openers for me.

The "Interfaces" section and student code reviews were real eye openers for me.

was a huge eye opener and something I could immediately apply to my job.

The course was fantastic -> eye opener!

Btw: The Students Code Review (Bonus Chapter) was a REALLY eye opener for me.

I would say its an eye opener for anyone wanting to learn c# more.


An overview of related careers and their average salaries in the US. Bars indicate income percentile.

Job Candidate $32k


Job Specialist 3 $47k

Base Job $57k

Logistics Job $58k

Seeking Job $60k

RN .7 D/E Job $62k

RN .6 N Job $62k

RN .6 E/N Job $62k

Specialist Job $65k

Seeking a job $69k

On the Job Trainer $75k

Write a review

Your opinion matters. Tell us what you think.


Rating 4.5 based on 5,429 ratings
Length 6 hours
Starts On Demand (Start anytime)
Cost $10
From Udemy
Instructor Mosh Hamedani
Download Videos Only via the Udemy mobile app
Language English
Subjects Programming
Tags Programming Languages Development

Similar Courses

Sorted by relevance

Like this course?

Here's what to do next:

  • Save this course for later
  • Get more details from the course provider
  • Enroll in this course
Enroll Now