Método recomendado de visualización de la pantalla de bienvenida C #

Estoy mostrando un formulario de inicio iniciando un nuevo hilo inmediatamente antes de ejecutar mi formulario principal.

En el método que ejecuta este hilo, estoy usando Application.Run como se muestra en la Opción 1 a continuación. ¿Es esta una forma correcta de hacer esto, o hay problemas esperándome porque he llamado a Application.Run dos veces? Una alternativa es la Opción 2, que también se muestra a continuación, donde llamo a .ShowDialog () para mostrar el formulario.

El formulario de bienvenida en sí se cierra después de un tiempo específico, controlado dentro del mismo formulario, y ambas opciones parecen funcionar bien.

Entonces mi pregunta es: ¿Cuál es la opción preferida - Opción 1 u Opción 2? Si pudieras dar razones específicas para uno u otro sería genial.

Gracias.

Fragmento de Main:

// Run splash screen thread.
Thread splash = new Thread(new ThreadStart(ShowSplash));
splash.Start();

// Run main application.
Application.Run(new MainForm());

Mostrar la opción de formulario de bienvenida 1:

    static void ShowSplash()
    {
        Application.Run(new SplashForm());
    }

Mostrar formulario de bienvenida opción 2:

    static void ShowSplash()
    {
        using (SplashForm splash = new SplashForm())
        {
            splash.ShowDialog();
        }
    }

Respuestas a la pregunta(3)

Su respuesta a la pregunta