A detailing shop will be able to give you an exact recommendation - you want to start with the least abrasive product and work your way to the most abrasive. This is of course, assuming you have all that money to spend on the various cleaners.
I think, in the end, you would work your way to this product:
http://www.autogeekonline.net/forum/pro ... glass.html
(actual before/after pictures to show you what to expect if applied as directed using the same methods)
It can actually polish glass and remove light scratches. A bit overkill if you just have water spots, but if you have scratches, this can actually do it. If you own a polisher, it works way better (I am unsure you can remove scratches by hand).