I've got an OBDLink MX (which is, uh, $99 or so) and I make good use of it.
I went with that because it's one of the few brands that is well known to tolerate the weird, OBD-II-esque dialect my truck speaks. It's a '97, and speaks mostly OBD-II, but it's got some variants that trip up the cheaper scanners.
Totally worth the money, though.