A Control
доступен только в потоке, который его создал - в потоке пользовательского интерфейса.
Вы должны сделать что-то вроде:
Invoke(new Action(() =>
{
progressBar1.Value = newValue;
}));
Затем метод invoke выполняет указанный делегат в потоке пользовательского интерфейса.