ElmScan is cheaper.
Besides being upgradeable, OBDLink:
- Connects more reliably to some vehicles
- Generally allows for faster refresh rates
- Has an enhanced command set, which allows third party access to certain modules not normally accessible by ElmScan 5 (this will matter to you if you plan to buy ScanXL at some point)
- Can be purchased a Class 1 Bluetooth option (330 ft LOS range)
If you plan to leave OBDLink connected to the vehicle, I would wait a couple of weeks for OBDLink 2.x which has the power save option. The upcoming firmware update works on the earlier revisions too, but it only goes down to 30 mA versus 1 mA (from the normal 100 mA).