Создайте cmdline-проект WinMo в своем решении и используйте Process.Start (appPath + @ "\ yourprogram.exe", String.Empty); (вы также можете использовать Thread.sleep перед Process.Start), в вашей основной программе используйте Application.Exit, а после этого используйте Process.Start для приложения-загрузчика. Может быть, передать параметр тоже пока из приложения-загрузчика не удастся запустить ваше приложение, только если вы сделаете это из своего кода и передадите этот «ключ» другому приложению.
Надеюсь, это поможет