protected PerformanceCounter cpuCounter; protected PerformanceCounter ramCounter; cpuCounter = new PerformanceCounter(); cpuCounter.CategoryName = "Processor"; cpuCounter.CounterName = "% Processor Time"; cpuCounter.InstanceName = "_Total"; ramCounter = new PerformanceCounter("Memory", "Available MBytes"); /* Call this method every time you need to know the current cpu usage. */ public string getCurrentCpuUsage(){ cpuCounter.NextValue()+"%"; } /* Call this method every time you need to get the amount of the available RAM in Mb */ public string getAvailableRAM(){ ramCounter.NextValue()+"Mb"; }