Hola que tal.
Puedes hacerlo fácilmente incluyendo en el main del programa el siguiente código :
- Process [] aAplica = Process.GetProcessesByName(Process.GetCurrentProcess().ProcessName); 
- if (aAplica.Length > 1) 
- { 
-   MessageBox.Show("La Aplicación ya se encuentra en Proceso"); 
-   return; 
- } 
-   
Ahora bien, se podría dar el caso de que cambiases el nombre del programa y lo lanzases igualmente, así que después del código anterior añade este :
- bool bAplica; 
- Mutex oMutex = new Mutex(true, "NombreAplicacion.exe", out bAplica); 
- if (!bAplica) 
- { 
-   MessageBox.Show("La Aplicación ya se encuentra en Proceso"); 
-   return; 
- } 
-   
Y ahora ya puedes lanzarla :
- Application.Run(new Form1()); 
-   
Espero que te sirva como me sirve a mi.
Un Saludo.