Puoi realizzarlo in diversi modi.

Puoi creare diversi form e impostarli tutti con le stesse grandezze, non penso farebbe differenza, anzi per forse sarebbe anche piu' comodo in modo da gestire meglio tutti i controlli.
Invece:
Creandolo su un solo form (anche questo modo puo' essere fatto in diversi modi.)

Potresti creare una serie di casi che va da 0 ad un numero (che corrisponde a quello dell'ultima azione del wizard)

quindi ad esempio...

codice:
Dim numeroform as integer

Private Sub form_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Select case numeroform

case 0 ' corrisponde al primo "form" da visualizzare

Me.text = "Wizard Parte 1" 'cambia il titolo del form
Label1.text = "Benvenuto nel Wizard" 'cambia il testo del label
back_button.enabled = false 'disabilita il pulsante back solo nel primo caso

case 1 'case 2 corrisponde al secondo"form" da visualizzare

Me.text = "Wizard Parte 2 destinazione file 'cambia il titolo del form
Label1.text = "Benvenuto nella seconda parte del wizard, scegli la cartella per copiare i file" 
back_button.enabled = true

case 2

funzioni ecc

case 3

case..4 e ecc
E richiami i vari casi con i pulsanti Avanti e Indietro, quindi:

Questo è il pulsante per andare avanti:
codice:
    Private Sub Button1_next(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        Case +=1

    End Sub
Questo per andare indietro:

codice:
    Private Sub Button2_back(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

       case -=1

    End Sub
Dovrebbe funzionare correttamente tutto quanto.