Nel tentativo di capire meglio il funzionamento di Application.OpenForms ho fatto la classica prova aprendo un Form vuoto e recuperandolo usando: Form f=Application.OpenForms["Form2"];
Capirete il mio imbarazzo quando scopro che il form non viene recuperato dalla collection.
Un giro veloce su LadyBug e scopro che questo comportamento è "by design" in quanto la proprietà Name del Form viene valorizzata in InitializeComponent solo quando il form viene effettivamente 'modificato', il che può avvenire sia perchè aggiungete dei controlli, oppure perchè modificate esplicitamente la proprietà Name del form.

Ok, basta saperlo..., ma perchè non scriverlo in MSDN? oppure LadyBug è, a tutti gli effetti, un estensione di MSDN?