Search for BackgroundWorkerComponent. That is the easiest thing to get to where you want to go, I think. You would want to loop on something, though. Probably what you want to do is put a boolean variable at form scope, set it to true before you call the DoWork of the background worker, then have the worker loop while the boolean is true. What this will do is give you a means to end that perpetual loop from outside of the BGW. The UI can set the Boolean to False and the loop will terminate the next time it loops.