Sometimes we want to stop or "kill" a process. Either the process was previously started or was opened before our application started. To kill a process, the violently-named Kill method on the Process instance is appropriate. It provides closure so the healing process can begin.

As we begin, let's mention the Process.Start method, which returns a Process instance. This instance is an object that represents a system-level process, not the process itself. In this example, we start the Notepad program, and then wait one second. Finally, we call the Kill method on the process variable. When you run this program, Notepad will start up, and then it will close in one second.
Using Kill method on process type [C#]
using System.Diagnostics;
using System.Threading;
class Program
{
static void Main()
{
// Start notepad.
Process process = Process.Start("notepad.exe");
// Wait one second.
Thread.Sleep(1000);
// End notepad.
process.Kill();
}
}
It is probably more frequently useful to use the Kill method to search for and stop applications that are running incorrectly. To do this, you can loop through the running processes; then you can acquire a reference to the process; and then you can invoke the Kill method on it, in the same way as shown in the example above.
Warning. Don't terminate applications in a console program if you happen to be doing something useful in another program. As an expert in this mistake, I can assure you this is not a good productivity booster.

The Kill method is an excellent way to cause a Process to meet a violent and swift end. Although the Kill method can throw some exceptions, it often does not and usually will accomplish your desired objective—which is somewhere between cold-blooded murder and a swift and painless execution.
.NET Framework Info