Eu acho que tem um jeito mais facil.. No vb, você não pode fechar o formulário inicial, se não o projeto se fecha.
Então cria um formulario vazio e coloca a propriedade Visible = False, então, no Form_Load deste form vazio, coloca:
Me.Visible = False
Form2.Show
Sendo assim, você vai ter apenas o formulario q você quer aberto.. então, quando quiser abrir o outro, já pode dar close no primeiro.. ficou meio confuso.. mas olha o exemplo abaixo
'Você tem 2 formularios, por exemplo, um de download e outro de upload'
'Form1 = Download'
'Form2 = Upload'
'Então acrescente um form e torne ele o form principal, no caso será o Form3'
'No load do form3, coloque:'
Me.Visible = False
Form1.Show
'Agora, qnd vc abrir o programa, ele vai abrir o form3, mas como o form3 ta invisivel e seu codigo chama o form1 direto, vc vai ver somente o form de download'
'então, qnd vc quiser abrir o de upload e fechar o de download, é so usar:'
Form1.Close
Form2.Show
Se não entender, responde aqui que eu te mando um projeto de exemplo.. Abrçs