Lo que necesitas para extraer información de un proceso determinado, lo tienes en la clase Process de C#.
http://msdn.microsoft.com/es-es/library/system.diagnostics.process.aspx
Si algunos procesos te dan error de acceso, lo más probable es que no tienes permisos para acceder a ellos. Estas ejecutando tu programa con permisos de administrador?
http://msdn.microsoft.com/es-es/library/system.diagnostics.process.aspx
Si algunos procesos te dan error de acceso, lo más probable es que no tienes permisos para acceder a ellos. Estas ejecutando tu programa con permisos de administrador?