I used RadScheduleView from Telerik for the UI and for the scheduling engine. The requirement was to look and act like Outlook Calendar and it does. The UI maintains a set of tables with in SQL Server with all the schedule info. I customized/extended the ScheduleView to hold info about the task I wanted scheduled. A task is just an exe that will run. I created a Windows Service with Topshelf which makes it really simple to create and debug (your service is just a console app you write). The DBA did not want the service to poll the database for schedule changes too often, so the UI raises an "event" thru MSMQ to notify when the schedule is changed. The service listens to the queue, hitting the database one time in the morning for today's schedule and any time a schedule change is queued. It is not as complex as it may sound really. Total dev time was about a week.
I hope I die in my sleep like my grandpa Bart, not screaming and kicking like the passengers of his cab.