Please see my answer herehere. It's a proof-of-concept for running a native crontab in Linux with your WP installation.
As for WP-Cron functionality, beware of these caveats:
- WP-Cron is a pseudo cron that is runs when WP is loaded. WP checks if a WP-Cron is scheduled or behind schedule to run and then executes the cron script.
- If there is not adequate traffic, your cron might run really late.
- Scheduling a WP-Cron to run during peak hours might cause some performance issues if it's a large, intensive script.
If you choose to go the WP-Cron route, here's a great article to show you how to use it. You can also check out the WP functions in the Codex here.
I prefer the reliability of a Linux crontab, especially for integral, heavy-weight cron scripts. For extremely lightweight scripts, I do use WP-Cron at times.
Hope this helps!