ciao,
l'unica cosa che mi viene in mente è far partire la form madre con la proprietà Visible = False per circa un paio di secondi in modo da lasciare il tempo di caricare tutto quello che deve. Quindi nella form metti un timer che dopo 2 (o x) secondi imposta Visible = True.
L'unica cosa sgradevole è che l'utente, dopo aver fatto doppio click sull'icona del programma, vedrebbe aprirsi la maschera d'avvio in ritardo. Volendo puoi far partire il programma con una form di attesa (del tipo "Caricamento in corso..."), quando in realtà la form madre c'è, ma non si vede...