Well, you have to get everything yourself, a couple of things are available
in the framework, the rest you'll have to get through wmi.
If you happen to be using directx, you can use the
Microsoft.DirectX.Diagnostics namespace, this provides you with everything.