Если вы хотите показать прогресс, вам нужно как-то разделить ваш длинный процесс на этапы или интервалы обработанных данных - и увеличить позицию индикатора выполнения после обработки этапа / интервала eash.
Пример для 3-х этапов:
Установите максимальное значение ProgressBar на 3.
Этап 1) Открытие и чтение файла в память - установите progressBar.Value в 1 после завершения этого
Этап 2) Анализ файла - установите для параметра progressBar.Value значение 2 после этого.
Этап 3) Дополнительная обработка? - после этого установите progressBar.Value на 3 = Max = процесс завершен.
Пример размера файла:
Представим, что вы можете измерить, какую часть файла вы уже проанализировали, в байтах. Затем сначала вы устанавливаете progressBar.Max на размер файла в байтах. Затем после каждого обработанного блока байтов из файла вы должны установить progressBar.Value в число обработанных байтов.
Второй подход, как правило, более точный, и progressBar работает гораздо более плавно, но его не всегда возможно использовать.