Use a chamois cloth (or other water absorbing leather) after you wash your car and you won't have any spots to get rid of later. That takes care of the body. For the windows I use windex after washing and that keeps spots off the glass. Then for chome trim, emblems, and headlights/taillights I use a little bit of windex as well.
Car washes have that "spot free rinse" but I'm a bit skeptical about it.
If you already washed your car and want to get rid of the spots I would water it down again and then dry it off with the chamois. Not drying your car in direct sunlight will also help to prevent water spots.
If all else fails, wash it and wax it.