Since you didn't gave us any information, I just give an example of these subjects.
First of all, you need to use Process
class include System.Diagnostics
namespace.
Provides access to local and remote processes and enables you to start
and stop local system processes.
An example with a batch file:
Process p = new Process();
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "yourbatchfile.bat";
p.Start();
For passing arguments, you can use ProcessStartInfo.Arguments
property.
Gets or sets the set of command-line arguments to use when starting
the application.