You could also consider using a BackgroundWorker, but the timer seems most suitable.