Heels, easily. They accentuate every attractive feature on a woman. Speaking only for myself, I feel so much more confident when wearing them.
well.... personally I prefer flats than heels. I've tried (even own maybe 1 or 2 pairs of) heeled shoes -- just cuz they're cool-looking -- but I overall prefer wearing flatter shoes. it helps better when the flat shoes have supports in them, so that they're not as flat as like Vans or Converse shoes..... but like Clarks or just owning some insoles for the super flat shoes would be very comfortable to walk around in. :)
Heels for me, started wearing them in high school because I'm quite short and years later it feels weird whenever I step into some flat shoes. And it's useful for special events and such, a good pair of heels can really add to an outfit - and if the shoes are correctly sized there should't be any pain your feet, even after walking miles. I remember hiking across up a mountain on holiday while wearing my trusty 3" heels, feet with nice and comfy, as well as being blister free. Lastly, call me arrogant but I just love the click-clack of a nice pair of heels, really makes you feel confident and improves posture. However while saying that, I do think flat shoes look just as cute with a pretty skirt or with a nice pair of jeans. Good for popping on your feet and quickly nipping out the shops and dashing around :)