Busycal is a wonderful calendar app that is a more fully featured version of iCal (predecessor to the even-less-imaginatively-named Calendar). BusyCal does include ToDo List capability with multiple lists, which can be associated with specific calendars. Can include tags, alarms, priority, notes, etc.
One of my favourite things about BusyCal is that it is not a slave to month boundaries, so the "month" view can include 2-12 weeks and can start whenever you want. I find it much more useful to see the next six weeks from today, than to see the rest of this arbitrary calendar month! Also the text color (rather than the silly dot) indicates which calendar an entry is associated with. Weather forecasts for the next ten days are also added (optionally), which is great for planning outings! This screenshot shows those big -- they can also be just tiny.