Как запустить программу на C# до появления рабочего стола?В планировщик запуск программу поставьте.
Для примера, до появления рабочего стола пользователя, необходимо показать MessageBoxКому показать? Для чего? У вас же программа показывается до того как появился рабочий стол - следовательно пользователь еще не вошел - кому показывать?