C# Events and Delegates Made Simple

C# Events and Delegates Made Simple. Many programmers starting with C# find Events and Delegates a bit confusing. So I’ve created this video with the hope that I can resolve this issue.

If you enjoy my teaching style and want to learn more from me, check out my courses:

Check out my other C# video tutorials:

Debugging in Visual Studio


Connect with me on social media:

My blog








45 responses to “C# Events and Delegates Made Simple”

  1. Maneesh Pardeshi Avatar

    hey great job, can i get the source code of this demo..

  2. Alquerian Avatar

    Great video, Mosh! Very well explained. You truly understand this subject matter.

  3. ThePhormio Avatar

    Awesome tutorial. You're a great teacher. 🙂

  4. Anand Maran Avatar

    I am becoming a big fan of urs…how the hell can you explain so well..

  5. 山崎瞬 Avatar

    Thanks for the lesson, it helped a LOT, it has been quite a long time since I started trying to understand the concept about delegates and events, and now I finally got to understand it!

  6. Popeta M Avatar

    helpful…. superb! 🙂

  7. Herman Reyes Avatar

    I am still till now cannot adopt this delegate thing in my c# programming. I am totally lost when and where to use this delegate.

  8. Mayank Dighe Avatar

    Thannks. Subscribe Worthy!

  9. Kalle Avatar

    I'm a beginner on C#. Only say this: ~S U B S C R I B E D~


    I recommend this to people struggling with events, thanks a lot

  11. yufan huang Avatar

    this is nice! i have a suggestion on your hardware. i think your too close to your mic, for some reason its not clear to hear you sometimes comparing to other peoples video. but no matter that, i will still watch ur video

  12. kishore arimilli Avatar

    Thanks Mosh It's very helpful for beginners.Best teacher

  13. Milad Yekani Avatar

    ey vaal , fogholadeyi .

  14. Damian Chambers Avatar

    Finally got it! Events and delegates. Appreciate this video. Simple and clear.

  15. joro353 Avatar

    This is by far the best explenation of events and delegates. Great job Mosh!

  16. raghu devisetti Avatar

    Nice Video which clears the doubts on the delegates and events

  17. Limo Sheereen Avatar

    Your example with mailserver video encoder is overly complicated and not related to your topic. further you obviously have not much experience teaching. This career not for you.

  18. Jamie Marshall Avatar

    Great video. Best i've seen on subject!

  19. Jonathan Tanu Avatar

    Thank you so much for explaining the concept of event-driven development utilizing delegate in C#. It has been a stressful time trying to understand what delegate is for and now I understand it. Once again, thank you.

  20. Nael Raheem Avatar

    this is what we call it "The Real Teaching"

  21. Jayashree Venkat Avatar

    Excellent tutorial Mosh !! This explained clearly, what I was looking for. I am taking your PluralSight – Full Stack Developer course.

  22. Mark Bartalos Avatar

    Awesome tutorial,now I uderstand events…Thank you very much!

  23. nidhin s pradeep Avatar

    Really you are a wonderful and gifted teacher!

  24. Sonia S Avatar

    very informative and useful

  25. 0XAN Avatar

    in OnvideoEncoded (at 26:49) is not needed to change EventArgs in VideoEventArgs, you can keep it generic and cast inside, like that:
    Console.WriteLine("MailService blablabl":+ (( VideoEventArgs)e).video.Title);
    this could help in polimorphism (if needed)

  26. Ionut Tudor Avatar

    are you stupid by chance , 32 min videos = "Events and delegates made simple" ive watched a dozen videos about del/events in 32 mins, learn to teach optimally, and your example with encoder sucks

  27. Anish Aggarwal Avatar

    Really like this video. Great explanation. Also, can you talk about contravariance and covariance in the delegate signature.

    For eg: what if I didn't change the signature of the delegate from Eventargs to VideoEventArgs. I kept it same.
    Instead, I type cast it at the Subscription methods and pass from VideoEncoded event as VideoEncoded(this, new VideoEventArgs())?

    Will this work?

    Benefits : This will prevent changing of my signature in all the places of the Subscribers.

  28. adeel malik Avatar

    hello sir the method onvideoencoded is confusing me what this method do if we do not write this method will the code runs the same ???

  29. Noobs DeSroobs Avatar

    What I dont understand is the reason for adding a delegate AND an event. What do you name multiple versions of the event? "VideoEncodedEventHandler VideoDeleted;" makes no sense.

  30. H. P.M. Avatar

    llour bideo jelp mi a lut

  31. ivan grobenski Avatar

    amazing tutorial man 😀 Tnx

  32. Bilal Shah Avatar

    Only tutorial that helped me to understand and use Delegate and events.. thank you 🙂

  33. Jason Scheiwiller Avatar

    chill with the annotations fam

  34. kse dot Avatar

    Thanks for your Lecture, It is very helpful. How can I see Entire Code of This Lecture.

  35. Umesh Kumar Avatar

    At last I found one video which really explains what delegates and events are all about. I owe to you for this great video, Mr. Mosh.

  36. Curtis Pienaar Avatar

    fk man in struggling with this our teacher is so shit and useless, the whole class basicly has to figure everything out on our own…

  37. Matias Fiori Avatar

    Every minute of your video has been worth. You have a good explanation skill. Thank you!

  38. Mike Freedman Avatar

    I finally understand events!! Your amazing. I've Been programming for over ten years and avoiding events for as long as I can. Now I can create true uncoupled code.

    I've subscribed and set alerts!!!!!! Thank you!!!!!

  39. Muhammad Zulfiqar Avatar

    teaching way is excellent!

Leave a Reply

Your email address will not be published. Required fields are marked *