ProcessStartInfo ps = new ProcessStartInfo("perl.exe", "program.pl args"); ps.UseShellExecute = false; ps.RedirectStandardOutput = true; Process p=new Process(); p.Start(ps); string output = p.StandardOutput.ReadToEnd(); p.WaitForExit();