Se você quer desenvolver tudo, recomendo que utilize Quartz.net para agendar tarefas. Uma outra alternativa, seria criar algum serviço no Azure (Worker Role, Scheduled Job ou WebJobs).
Alguns links:
http://stackoverflow.com/questions/1356789/how-to-use-quartz-net-with-asp-net
http://www.mikesdotnetting.com/Article/254/Scheduled-Tasks-In-ASP.NET-With-Quartz.Net
Thiago Custodio | Software Engineer
Blog
Twitter
Faça parte da Comunidade Windows Azure Brasil no Facebook