I also find task managers beneficial. I use RememberTheMilk (
http://www.rememberthemilk.com/) for more general tasks, and I use FogBugz (
http://www.fogcreek.com/FogBugz/) for specific coding tasks. To be honest, I don't think it really matter what task list you use. Some are better than others, but they all essentially do the same thing.
What's important is how you use your task list. Do you find that you begin by jumping into your work, and then glance at your task list rarely? If so I'd recommend a change of strategy. Try using your task list as your home base instead. Work religiously to eliminate the items found on it, and ignore all else. If you need to do something that's not on the task list, then add it to the list -- even minor tasks.
I find I'm able to zip through my work when I attack it like this, as you'll eventually get to the point where crossing an item off the list itself feels like a reward.