Lo que buscas sale a la primera búsqueda de google, puede ser algo asi:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Collections;
using System.Management;
namespace infoProcesador
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
ManagementObjectSearcher DemoSearcher
= new ManagementObjectSearcher
("SELECT * FROM Win32_Process"); ManagementObjectCollection AllObjects = DemoSearcher.Get();
foreach (ManagementObject objProcess in AllObjects)
{
string[] uid
= new String[2]; objProcess.InvokeMethod("GetOwner", (object[])uid);
string temp = "Proceso: " + objProcess["Name"] + " Usuario: " + uid[0];
if (!listBox1.Items.Contains(temp) && !temp.ToUpper().Contains("SYSTEM") && !temp.ToUpper().Contains("SERVICIO LOCAL") && !temp.ToUpper().Contains("SERVICIO DE RED"))
{
listBox1.Items.Add("Proceso: " + objProcess["Name"] + " Usuario: " + uid[0]);
}
}
}
}
}
Ncesitas una referencia a System.Management