Invoke просто запустит вышеуказанное в потоке пользовательского интерфейса, который уже происходит, если вы вызываете его из загрузки формы, поэтому ваш пользовательский интерфейс все еще будет задерживаться, пока вы заполняете список.
В приведенном выше примере вам, вероятно, не нужен новый поток, просто создайте массив, заполните его, а затем выполните AddRange вместо Add.
Добавление вызывает обновление каждый раз, и это замедляет загрузку. С AddRange обновление будет происходить только один раз.