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 2,611 ratings
Length 6 hours
Starts On Demand (Start anytime)
Cost $11
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

unit testing in 29 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!!

The last few lessons on Unit testing and Interfaces has me stunned.

There wasn't a demonstration of testing the code, even though there was a section dedicated to unit testing.

In the Interfaces section, Mosh includes a little bit of unit testing too.

The only quibble I have is the inclusion of unit testing in the interface section.

I think you should either move the unit testing to the end of the interface section or get rid of it all together.

The introduction of interfaces initially left me a bit confused as it was paired with the idea of unit testing, without really making it clear there was another application for interfaces.

The only part I thought was lacking was the video on interfaces and unit testing.

object oriented programming in 28 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.

visual studio in 28 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.

step by step in 20 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!

excelente curso in 10 reviews

Thank you Es un excelente curso que te enseña los pilares y fundamentos de la OOP utilizando C#, debería tener más ejemplos y más ejercicios Finally I understand what static is all about, instead of you can learn that later, just avoid and confuse yourself for now.

Excelente curso, recomendable.

Very professional and understandable Excelente curso, me gustó mucho que no solamente se explican los conceptos sino que también se tienen en cuenta buenas prácticas de codificación e incluso principios de SOLID.

Excelente curso.

I have signed up to a few of his courses Excelente curso, ingles muy fluido y entendible, explicación de Interfaces muy completa, avanzo al siguiente curso.

--------------------------------------------------------------------------------------- Excelente curso de C#, Mosh explica los temas de forma muy clara y con ejemplos prácticos que te permiten comprender de forma inmediata tópicos complejos.

Instructor is providing a thorough overview of OO concepts using relevant c# code examples Es un excelente curso, muy bien explicado y con ejercicios que enriquecen las clases.

Excelente curso , 100% recomendado Corso fatto molto bene, chiarissimo, ve lo consiglio.

loose coupling in 9 reviews

I found Mosh very engaging, knowledgeable and gave real world examples when explaining the concept of loose coupling.

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.

Think emphasis should be on knowing how to do loose coupling but being able to judge when to use Extremely good course, would recommend.

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

Tight coupling vs loose coupling.

I really liked the topic of loose coupling.

In my college experience (I'm sure I can speak for other students as well), interfaces, abstract classes, and similar topics were only briefly covered and now I clearly understand their importance in practice in regards to loose coupling!

Had to go over it thrice to understand how Interfaces and subsequent loose coupling between classes lead to better testability.


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 2,611 ratings
Length 6 hours
Starts On Demand (Start anytime)
Cost $11
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