I know this is a wee bit off topic, but I think a lot of programmers need this sort of thing and many use the GTD approach.
My criteria: *Windows compatible. I prefer a desktop solution, but web-based option with a good UI might be acceptable.
Easy to add a task to the "inbox" . (Single hotkey and I'm typing it in. I have fleeting thoughts that often evaporate if I have to go clicking around too much before I can enter something.)
Strong filtering. ("Show me all tasks labeled as "Next Action" or that have a Begin Date today or older).
Powerful full text search (also useful for the filtering).
Very easy to use. One click "done" button, etc.