Полагаю, вам нужно добавить команду .WaitForExit () в конце вашего оператора, вот так:
Process.Start("test.exe", "\"" + exename + "\"").WaitForExit();
Однако это будет бесконечное ожидание (обычно это плохо). Если вы хотите добавить тайм-аут, вы можете использовать перегрузку метода следующим образом:
Process.Start("test.exe", "\"" + exename + "\"").WaitForExit(30000);
30 000 - это 30 секунд (целое число - миллисекунды).