Recently I wanted to test whether we were successfully releasing all our event subscriptions when an object was disposed. I thought this would be a simple task, use Type.GetEvents() to get the events and then use the resulting EventInfo's to get a list of subscribers. Not quite so simple, while EventInfo has methods to add and remove events, it has no invocation list. After a bit more work I discovered the trick is to ask for the events as fields and then cast the resulting object to Delegate. Now I can invoke GetInvocationList(). Too bad MS didn't include GetInvocationList() on the EventInfo. Problem solved: our unit tests are starting to get vey good at catching subscriber leaks.