*sigh* One step forward, five steps back.
As in the words of one forum poster:
BackgroundWorker is pretty much "Threading for Dummies" in that it’s an excellent tool to teach a new programmer how to run work on a second thread and is great for simple tasks; but with it’s simplicity comes the price of flexibility.
If you want to run multiple threads, you really need to use the .Net System.Threading class.