You can start technically any program with the scheduler. But I suppose, you don't want to add one by one self-sending mailer applications to it from your asp.net code. I suppose you need something you can pass your mails, and that application would send it for you. Please see my article:
Using MSMQ in mail relay[
^], you can use the library provided from any .net language (you have not told us which one you use), and you can see an example there how to add html body (that is how you can make your mail styled) or even attachment.
If you want to schedule the messages by default to a later point of time, you should modify the
QueueMessage method, to accept a timestamp and use that in constructing the
message.Extension field instead of the current timestamp.