“Events enable a class or object to notify other classes or objects when something of interest occurs. The class that sends (or raises) the event is called the publisher and the classes that receive (or handle) the event are called subscribers.” (source: https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/events/ )
The use of events in c# is pretty straightforward. However, same as every other programming technique, it may take some time for one to get used to and use effectively. Lately I have been revisiting the use of events in c#, trying to make sure that I use them properly in my projects. While doing so, I made a small case study, in the form of a console application, and decided to share it, in case it might help someone else as well.