As a casual, walk-by visitor, my preferences are, in order:
1. Presentation (obvious cleanliness, can easily see the bread and fillings)
2. Choice (nice mix of old reliables and some unusual offerings)
3. Price
As a regular, my preferences are, in order:
1. High & Sustained Quality of bread and fillings (I can live with my favourite sandwich being off the menu occasionally if the owner didn't feel the food source was up to scratch).
2. Location
3. Choice (as above, with occasional new try-outs)
4. Price ("fidelity" card system?)
5. Speed of service
6. Welcome
(I'm assuming it's clean, otherwise I wouldn't go back, ever).
If you're aiming at regulars of the midday workers' break market, then try to offer some good alternatives to bread (bagels, soups, stovies, etc), as well as good coffee/tea.
Image is important, so do some homework on who your target customers are. For example, don't cover your counter with Mars bars, Twix, etc. if you're predominantly selling to "middle-class" office workers, even if it is lucrative.
Oh, and I agree with Sarah-Ink: Don't put mayo or anything else on as standard. I get annoyed seeing a menu board detailing all the ingredients, then find out that its got mayo or something that wasn't listed on it, with the owner saying " 'course it's got mayo on it - the've all got mayo on it!".
Back on the subject of correctly targeting customers: I was in Richmond a few months back, waiting for a train on the platform, ruing the fact I had no time for breakfast. I see a bagel fast-food place right on the next platform - brilliant! I've got 5 minutes to spare. I go in, no one in the queue, and order a bacon&egg bagel. Fine. The cynic in me gets my mouth to ask how long it will take. "Oh, about 10-12 minutes". Thanks, but no thanks, I've train to catch. Now maybe it's just me, but if I decide to buy food from a platform station, it's not for the "haute cuisine", it's for basic food served quickly.