Leaks you can see in the sourcebeginner
Finding a leak needs a profiler, but causing one is a code choice: an event handler never unsubscribed keeps the subscriber alive for the life of the publisher, and a static collection that only grows never gives anything back.