Comment ToDoList (Score 1) 428
I use a freeware program called ToDoList. It's available at http://www.abstractspoon.com/ . It's got everything you've asked about, and probably a bit more. There are many features, probably a bit too many as it can be tricky to figure out how to do certain things.
You can prioritize tasks, create subtasks, color code them, set due dates, track time for each task, as well as add rich text comments for each task. There is a way to add attachments to a task (or at least a reference to a local file), but I can't figure that out right now.