Вы можете использовать Таймер (System.Windows.Forms.Timer).
Перехватите событие Tick, продвиньтесь, затем индикатор выполнения, пока он не достигнет максимального значения. когда это произойдет (достигнет максимума), и вы не закончили работу, сбросьте значение индикатора выполнения на минимум.
... так же, как Windows Explorer: -)