Updating listbox using a thread in
This is where the Background Worker comes into play - it makes it simple, easy and fast to work with an extra thread in your application.
If you are using Active X controls on a form, you may receive the cross-thread Invalid Operation Exception when you run under the debugger.
Programming Windows Forms user interfaces is quite straightforward as long as you do not use multiple threads.
But whenever your application has some actual work to do, it becomes necessary to use threading to ensure the responsiveness of the UI.
For example, it is not safe to get or set a property on a Windows.
Forms control from any thread except the thread that handles the message queue.Therefore, the only communication that can be performed between your running background task and the UI is through the Report Progress() method.