What is the difference in using:

BackgroundWorker1 or System.Threading.Thread