//Creamos un objeto Process con el que lanzaremos el comando externo
System.Diagnostics.Process oProceso = new System.Diagnostics.Process();
//Para que nuestra aplicación no se quede esperando a que finalice el comando
//externo que estamos lannzando.
oProceso.EnableRaisingEvents = false;
//Indicamos el programa que queremos lanzar, lo ejemplifico con el WinRAR
oProceso.StartInfo.FileName = "D:\\APLICACIONES\\WinRAR\\WinRAR.exe";
//En caso que tengamos argumentos que pasarle los indicaríamos aquí. En el
//ejemplo simplemente le indico el fichero que quiero abrir con el WinRAR.
//Aquí iría la típica línea de comandos
oProceso.StartInfo.Arguments = "D:\\APLICACIONES\\WinRAR\\Order.rar";
//Lanzamos el proceso, lo que nos debería abrir el WinRAR y dentro de él, el fichero Order.rar
oProceso.Start();