A caddy or other restraining device prevents breakage, or at least reduces the chance of breakage to less than the chance with hand washing.
I think the marks you're getting can be cured if you keep the rinse-agent well filled.
I find the machine does a better job than I can do by hand. Glasses emerge odor-free, which is especially important (I find it's really hard to get them fully washed by hand), and as long as they stand exactly upright they dry very well. My KitchenAid dishwasher has some restraining clips on the top rack that are adequate for normal sized white wine glasses, and I use a caddy on the bottom rack for the large stems.
I've heard that over time the harshness of dishwasher detergent will pit the surface of crystal. I use the gel, and I don't know if that helps, but I've never noticed any degradation and I've washed some of my stems a whole lot of times.
If I'm having serious wine people over for wine, I'll run my glasses through the dishwasher a second time, with no detergent.
If you wash by hand, I think the key things are to use very hot water (as hot as you can stand) and to dry with glass-towels. Paper towels don't work well, nor do generic dishtowels. Glass-towels are finely woven linen (or cotton) towels that really suck up the water on account of their particular weave and surface texture -- though they work much better if the glass and the water are hot.
Before I had a dishwasher in my apartment, the only way I found to get glasses truly clean when hand washing was to wash them, dry them, and then invert them over a pot of boiling water in order to steam them (and then to dry again).
I recommend you store your glasses upright, not inverted, by the way. This prevents chipping, as well as trapping of odors. And if they've been dormant for a while, I recommend washing or at least rinsing before using.
I've also become a fan of priming glasses, as they do at Mario Batali's restaurants. This provides additional insurance against lingering odors.