Good points, TerriblePun.
One more thing: I think it's nice to tell people to change something that can be easily fixed. If your friend is trying on a dress that isn't a flattering look, you can truthfully tell her to get something else in a color/cut/size that will flatter her.
However, I've been on the receiving end of people who have criticized my hairstyle, or clothing, or whatever. And then I had to sit there while that person ordered dinner. I felt awful - I was so embarrassed, and I wanted to just go home. I couldn't do anything to 'fix' the problem, so I felt miserable and kept thinking "I bet that person keeps thinking of how awful my shirt looks." For what it's worth, I've never talked to that person again.
And if someone were to ask me "what do you think of my hairstyle/clothes/makeup?" I'd take a second and think. If someone is obviously loving the look, I'll think of something to say - "wow, that lime-green is an eye-catching color!" If they weren't sure, I'd try to state it in a way that wasn't mean, maybe "I like the color, but the cut isn't very flattering."