All cars today have OBD-II diagnostics as well as proprietary manufacturer diagnostics. The OBD-II diagnostics are mandated by federal law - to sell a car in this country you need to make emmissions related error codes available to any repair shop (and individual) that has a Generic OBD-II scan tool. These can run anywhere from $100 to several thousand depending on features. You can buy them at most parts stores.
Now, those just cover general engine, trans and a smattering of other system's diagnostics. To really be able to look at the various subsystems data streams (fully) and have bidirectional control (meaning actuating devices, or flash programming a PROM), you need the proprietary scan tool. These can get very expensive, and in some cases impossible to obtain.
For Ford, that tool is calledl the NGS Star tester manufactured by Hickock. I think they're around $3000.00.
This is what they use at the dealership.
For GM, the tool is called the Tech II manufactured by Vetronix - $3500.00.
Chrysler - DRB-II, or the new Star Scan (I believe) - Around $6500.00.
Honda, Mitsubishi, a smattering of other Asian cars, (possibly Mazda) - the Mastertech manufactured by Vetronix.
European cars are a whole other problem. Most of them are not being forthcoming with their codes. The Mercedes, Porshe or BMW testers go about 15K and good luck getting one even if you have the cash.
VW uses a tool called a VAG. Ross-Tech on the web makes a software based version for next to nothing that works very well.
Saab uses a different cartridge in GM's Tech II.
Volvo has it's own tester - theVedis I think...
There are a bunch of others I'm forgetting.
Also, there are some generic scan tools that offer some of the functionality of several of those factory scan tools (but not all of them). The OTC Genisys, Snap On MT2500, Mastertech etc...
Anyway, how are you going to decipher those codes when you get them? For example, a code for an O2 sensor that is out of range may not necessarily be a faulty O2 sensor - there could be something else causing it. The code only points you in the right direction. The scan tool certainly isn't going to tell you how to diag the problem. Combining the codes with various data values from the vehicle is used with flowcharts that techs use to solve problems. And getting THAT information in some cases can be difficult or expensive too.
Excuse my rambling...