Метод Control.Invoke () отправляет вызов переданного метода в цикл сообщений потока элемента управления и возвращается после завершения вызова (после вызова метода и переключения контекста обратно в ваш поток).
Метод Control.BeginInvoke () просто отправляет вызов в очередь сообщений потока элемента управления и немедленно продолжается (не ожидает выполнения переданного метода).
Вы можете использовать оба метода для обновления пользовательского интерфейса из фоновых потоков.
Не имеет значения, какой элемент управления (или форма) вы используете для вызова Invoke или BeginInvoke.