I would like to get CPU usage for a specific process..
This code
total_cpu = new PerformanceCounter(\"Processor\", \"% Processor Time\", \"_Total\");
Dividing by the processor/core count is what seemed to yield fairly accurate results when comparing against Task Manager.
To save people time:
// This will return the process usage as a percent of total processor utilisation.
var processUsage = process_cpu_usage/nextValue() / Environment.ProcessorCount;