Features I look for include:
- Easy to read on screen
- Similar letters like O, 0 and o and l, I, 1 have to be easily distinguishable.
- Good, distinctive punctuation eg square/round/curly brackets, commas, full stops etc.
- Attractive, because I like good typography
And it has to maintain these characterstics in normal, bold and italic variants. So far, Consolas is my favourite but prior to that I tried things like Courier New, Monospace etc but they're not as nice. I find Courier's serifs make things look a bit fussy, Monospace managed to look good at one font size and looked fairly ugly at others etc.
Some programmers seem to value getting the maximum lines of code on screen, but I'm not that fussed myself.
And then you get things like the so called 'ultimate programmers font',
Profont, which is about as fugly and unreadable as these things get, so yeah - whatever works for you really.