Alright. I've just been told that, instead of creating new forms over and over again using new FormName(); I should simply open 1 form and then hide/show it as I please. The issue now is, that I don't really know where/when I should create these new form instances and how I would reference them. I was thinking that I could create a new instance of all of the forms I need when the program starts and then just hide them until I need them, but I've really got no idea. Can anybody give me any clues on what they would do and how they would do it? Much appreciated.