will a process started with these settings:
p.StartInfo.UseShellExecute = false;
p.StartInfo.CreateNoWindow = true;
p.StartInfo.RedirectStandardOutput = true;
close when my program closes? or crashes? for that matter?
No… it only terminates either by exiting itself or being killed either by your process or some other process or by the user (for example via Task Manager) – see for reference http://msdn.microsoft.com/en-us/library/system.diagnostics.process.aspx