Во-первых, ошибка в том, что вы указываете выходной файл.
Во-вторых, нужно явно интерпретировать выход как UTF8.
Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "mystem.exe";
p.StartInfo.Arguments = "-n input.txt";
p.Start();
using (var reader = new StreamReader(p.StandardOutput.BaseStream, Encoding.UTF8))
{
textBox3.Text = reader.ReadToEnd();
}
p.WaitForExit();
Или, может, я не понял вопроса, и вы хотите выводить и в файл, и в выходной поток? Похоже, что данная утилита так не умеет. Придётся сохранять файл самому.