What are the main differences between the EventSource and EventProvider classes?
I understand both classes to be an event provider for ETW. If there aren't key differences in the two then what are the pros and cons.
I use the EventSource class simply because I found more examples/documentation online, and it seemed more straightforward to implement Channel support (writing to the default channels in the Event Viewer - admin, operational, analytic, and debug) because the EventRegister class automatically creates the manifest (described here).