I like to use Things, a task management application, to wrangle all my day-to-day todos and projects. After trying several different applications, I chose Things largely because it seamlessly syncs to my iphone, ipad and mac laptop, and has just the right mix of powerful features that don't get in the way of just wanting to quickly manage todos.
This post from Cultured Code's blog describes the team's approach to designing just one dialog: creating repeating events. This potentially complex interaction has been done very well, and very badly, in various calendar and todo applications. Here's an example of a team that got it right, and how they approached the design process.