using Process process = new() { StartInfo = new() { FileName = path, UseShellExecute = false, RedirectStandardOutput = true, CreateNoWindow = true } }; process.OutputDataReceived += new DataReceivedEventHandler((sender, e) => { if (string.IsNullOrEmpty(e.Data)) return; BeginInvoke(() => { tboxConsole.AppendText(e.Data + Environment.NewLine); tboxConsole.Refresh(); }); }); process.Start(); process.BeginOutputReadLine();