Beginning Object-oriented Programming with C# (Udemy.com)
Learn OOP fundamentals applied to the C# programming language
Created by: Zoran Horvat
Last updated January 2023
What you will learn
- Understand why C# is organized the way it is
- Learn how to step from procedural to proper object-oriented design
- Construct larger classes out of smaller ones
- Combine behavior to construct complex features
How it compares
Against the other 194 rated Udemy courses in C# on CourseDuck:
- Rating4.6 out of 5higher than 76% of them
- Reviews1,682#43 of 195 by number of reviews
- Length6.9 hourslonger than 57% of them
- Last updatedJanuary 2023more recently than 61% of them
Course Description
In this course, you will learn the basic principles of object-oriented programming, and then learn how to apply those principles to construct an operational and correct code using the C# programming language and .NET. As the course progresses, you will learn such programming concepts as objects, method resolution, polymorphism, object composition, class inheritance, object substitution, etc., but also the basic principles of object-oriented design and even project management, such as abstraction, dependency injection, open-closed principle, tell don't ask principle, the principles of agile software development and many more.
After completing this course, you will be qualified to continue learning the principles of object-oriented design, and to start developing applications that will be modeling different business domains.
This course differs from other similar courses in that it first devises the C# programming language from scratch, and the .NET Runtime that makes the object-oriented code run. Only after completing this task shall we step on to using the programming concepts to implement customer's requirements in C#.
The reason for such an extreme experiment is to teach the programmers that any object-oriented language is only a tool, which relies on a small set of operations that are already implemented for us - such as silently passing the this reference or resolving function addresses from the object reference at run time. I find great danger in writing code without understanding what happens when a piece of object-oriented code is taken for execution.
Instructor Details
- 4.6 Rating
1,682 Reviews
Zoran Horvat
Zoran is Principal consultant at Coding Helmet Consultancy, speaker and author of 100+ articles, and independent trainer on .NET technology stack. You can find him speaking at conferences and user groups, promoting object-oriented development style, clean coding practices and techniques that improve longevity of complex business applications. Since 2014, Zoran is constantly publishing video courses, explaining object-oriented modeling and design as the central element of application design and relating it to other development aspects, such as persistence, UI and system integration.
More C# courses
C# Developers: Double Your Coding Speed with Visual Studio (2018)
4.7 (4,035 Reviews)
Provider: Udemy
Time: 2.2h
$13.99
Object Oriented Programming with C# - Beginner to Advanced (2020)
4.7 (2,063 Reviews)
Provider: Udemy
Time: 5.6h
$64.99
Learn Game Development with C# Programming and MonoGame! (2025)
4.7 (1,094 Reviews)
Provider: Udemy
Time: 6.6h
$12.99
Reviews
By Samuel Andersson on 11/25/2024
I found myself enjoying the history lesson behind how OOP came to be, more then i expected to. This course delivers on what I had expected of it, despite some parts being a little difficult to grasp at first. Mr.Horvat is clearly experienced and knowledgeable in his field and his presentation of solutions to problems, explanations, examples of best practice and so on, were easy to follow most of the time.
By Jerry Johnson on 2/9/2024
Solidified my understanding of the underlying principles of object oriented design. I come from a procedural programming background. I have been working in object oriented for a few years now but some of the details were vague in my mind. Although this is a beginner's course, and I am far from a beginner, it brought many of the principles into focus for me. I recommend the course and the instructor. I have watched many of his YouTube videos and recommend them as well.
By Roman Egorov on 8/5/2023
Zoran's course is a valuable resource for anyone embarking on their journey to master C# and OOP. The combination of clear explanations, insightful motivations, and practical exercises sets learners up for success in grasping these fundamental programming concepts. Whether you're new to coding or looking to solidify your understanding of OOP principles, this course is an excellent choice.
By Zahra Zvirzdinaite on 7/15/2023
I have come to this course from an ongoing C# and .NET bootcamp organized by one company in search of clarification of some concepts that I struggled to really understand. Although I wouldn't call this course a beginner's level (even in terms of OOP and not C#), it helped me tremendously with understanding and application of OOP concepts. It definitely needs to be rewatched more than once to suck in all the details but so far I haven't come across another resource that would explain OOP in such a detail and in a condensed manner at the same time.
By Daniela Montanaro on 5/2/2023
Zoran knows his stuff, he's clearly very skilled. I found the structure of the course good, but the Calendar example with the leap year calculations confusing. His tone of voice communicates enthousiasm but he reminded me of a narrator of children's novels. I personally would have preferred him to talk in his normal everyday tone. Also, I found it too difficult for a level 1 beginners course. I appreciated the fact he disn't skim over the surface but took the trouble to understand himself and explain the principles and evolution behind OOP.
By Disha Sengupta on 1/22/2023
Not only is Zoran teaching from first principles and connecting all the dots for me, the subtle humour added here and there makes it a really fun watch too. But this is not a beginner course. It's to be watched by mid level programmers. They will be able to connect the dots, per se, which will lead to a lot of "Aha" moments for them. I am definitely going to invest more time in watch rest of the videos my Mr Zoran, his teaching ability is incredible.
By Manuel Pranjic on 1/17/2023
absolutelly genius. extremelly well organized and explained, going deep into detail about the why of thinks, so you can really understand why thinks are being done the way the are. as a result, the knowledge you acquire, is more prone to stick with you for a longer time. nonetheless, like the author himself repeats saying, go back and watch certain videos over and over again, until you are sure to understand, before continuing. All in all, theteaching style has a pleasant flow to it, you get the impression, that no word is waisted, it is just straight to the point with no unnecessary fuss. Preparation of this course, must have been a lot of effort. Thank you very much!
By Elijah on 12/9/2022
I really enjoyed the instructor's teaching style. He has a way of making abstract concepts that can otherwise be quite boring much more interesting. I feel like I learned alot but also feel like I will definitely need to continue learning. There is alot to learn. May watch this again as well as other resources. I especially liked how he explained the evolution of the C# syntax which helped me a lot coming from a JavaScript background.
By Faithman Stephen Nartey on 11/27/2022
I discovered Zoran Horvat at Pluralsight and fell in love with his teaching style, i.e. teaching from first principles. His approach enables one to understand the why of things. I highly recommend this course if you want to know why the object-oriented programming paradigm was invented and the issues it seeks to address.
By Ibrahim Ajibade on 7/20/2022
After going through a few of Zoran's courses on Pluralsight I wished there'd be an introductory course teaching OOP from his perspective. I'm glad he made this one and he perfectly explains his thoughts and principles with examples. I've gone back to his old courses and finished 2 in a week (and this time I understood them) whereas I never competed any since 2019. This course is excellent and I'd recommend it as a prerequisite for most of his other courses.
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 92 / 100






