A few things I've found that work great is Stoner's Invisibile Glass with good fresh paper towels (try different brands if they streak, the ones I use do not). You might have to do it twice if there's a lot of crud on the glass, maybe three times on rare occasions.
Once you get it really clean then put a good layer of Rain-X on the glass -- it makes it easier to clean bugs and crud later (not just water in the rain).
A couple of other products that work well after you get the bugs and heavy dirt off are Mother's Chrome Polish - the stuff that is a blue liquid and comes in a bottle; the white paste in a can is an abraisive don't use it. Use a clean pure cotton terry towel to put a thin coat on the windshield. After it hazes over slightly (usually by the time you finish putting it on) then use another clean terry clotton towel to lightly buff the haze off. Unless the towel is dirty you'll be left with a crystal clear windshield. The chrome polish/cleaner also seems to leave a coating that helps shed bugs and water like rain-x.
Finally - on a whim I recently tried some Meguiar's paint cleaner (from the 3-step Crystal process, not sure if it's still avaialable) and it worked as well, if not better than the other products I mentioned. I lightly buffed a thin layer onto the glass, then buffed it off leaving no smears, no streaks, just crystal clear glass.