The 'at' command has the added advantage over cron that it is not tied to a specific instant of time. If you schedule a job to run in 'cron' to run at 1pm every day, and the system happens to be down at 1pm, the job will not run until 1pm the next day. With 'at', if you schedule the job to run at 1pm, and the system is down until 2pm, then when it comes up at 2pm, the job will run then.
Of course, you have to add extra logic to have it re-schedule itself if it is a periodic job.