So in my apps, I tend to create new instances of forms on the fly, then use Form.Show()
to display them (non modal).
So according to the answer over at MSDN, non modal forms are automatically Disposed whenever you close them.
I decided to test this by opening my test form multiple times and closing them. I even opened multiple instances at the same time. After a second or two, the memory used by these forms were reclaimed, which would indicate that they were being disposed properly.