Mira esta solución, declaras como te dije antes al inicio del formulario la variable form y luego para abrir el formulario haces lo sgte:
Código c#:
Ver originalif (f == null || f.IsDisposed)
{
f = new Form2();
f.MdiParent = this;
}
else
{
f.BringToFront();
}
f.Show();
Aunque no sé porque pero no me gusta XD
Fuente
Espero te ayude