There's System.Threading.Timer, but this is a multithreaded timer so you'll still encounter the same issues with this as if you created a separate thread.

Darwen.