Fechar Form filho ao abrir outro

Boa noite pessoal, não sei se eu postei no lugar certo mas não encontrei a categoria correta para o assunto sobre C#.
Peço desculpas se violei alguma regra.

Sou novo no C# e estou tentando montar um programa com partes de códigos que acho na internet.
Aonde quero chegar, criei um menustrip com algumas abas fiz um Form pai e fiz dois form filhos com o seguinte cod.:

Form2 newMDIChild = new Form2();
// Set the Parent Form of the Child window.
newMDIChild.MdiParent = this;
// Display the new form.
newMDIChild.Show();

Só que tem um problema nesse código, quando eu abro uma aba o que já estava aberto continua e assim por diante ate o infinito e alem.
Queria saber como eu posso fazer para fechar automaticamente quando clico em outra aba

Agradeço a todos

O problema do seu código esta em como você esta chamando a janela, o objeto janela esta atribuído ha janela,
Não intendi bem sua hierarquia mas imagino que o problema seja o seguinte

Form1 = pai
-> Form2 = filho

//Quando mandar o filho abrir faça isso dentro da classe pai

this.hide();
newMDIChild.show();

Detalhe o pai só vai ficar invisível enquanto o filho vai ficar visível, não é possível você encerrar o pai pois o objeto filho pertence ao objeto pai, caso queira depois voltar a mostrar o objeto pai, você pode criar um ponteiro dentro do objeto filho que set características do objeto pai seria

função dentro do pai (){
//para isso funcionar o filho deve ser um variável global dentro do pai
newMDIChild.hide();
this.show;
}

Infelizmente não sei o nome dos comandos em C#, mas a estrutura é bem parecida com java