I have a Windows Forms application that has UI which contains different forms that the user is navigated to during his work. At a certain point When navigating forward the next form is loaded in an entirely new instance of the appllication while the previous form stays in another instance although it has been hidden through the code. Even more - an exception saying "Cannot access a disposed object." is thrown. First - the previous form is only hidden - not closed so the object should not have been disposed. And even if the previous form has really been disposed how is it possible to still be present in another instance of the application. This happens sometimes on Windows XP, but never on Windows 7. Does anyone know how to fix this?