A new widget has found its way onto my Dashboard: QuickCal. It makes adding iCal events as easy as typing a natural-language string such as "lunch with Aditi at noon tomorrow." The widget parses the text as you type and shows what it finds below the entry area, letting you know if it understands your syntax. It also adds reminders automatically, based on your preferences for all events, events more than a week away, and events more than a month away.
QuickCal seems to need the subject (title) of the event to be at the beginning of the string. Anything following the "at" or "on" clause is usually discarded. Since we're talking about "natural" language, this usually works out fine. It's not QuickCal's fault, but the only drawback for me is that my Dashboard takes far too long to start up, so any Widget I use has to carry that extra baggage on first load. I stopped running Dashboard Kickstart recently in an effort to speed up my wake time, but I may go back to it.
I've also really enjoyed FlexCal, an app which provides a hotkey-triggered HUD for entering iCal events and todos. In my opinion, anything which keeps me from having to load iCal and deal with the multi-step process of entering a new event is worth the money. Of course, both QuickCal and FlexCal are free, so there's no room for complaint. Be sure to make a generous donation if you dig one, the other, or both.