I think the perfect To-Do list would have
- the ability create (and allow others to create, subject to black/white-listing) a task by sending an email to my list
- the ability to delegate tasks to others (whether they're users of the app/service or not)
- order in a way that takes urgency, importance and deadlines into account
- an intray, so I can accept/reject tasks sent/delegated to me
- Mailbox app-style swiping to snooze tasks or mark them as Done
- shared To-Do lists (e.g. for teams)
- support for sharing tasks with others so they can comment on them
- API integration
- dependencies and workflows
I created some mock-ups a few months back to illustrate my thinking: http://jackgavigan.com/1tray-concept/