Я бы предложил использовать фоновый поток для опроса.Вы можете запустить новый объект Thread и опросить сервер, спящий после каждой проверки.Если вы найдете изменение, вы можете получить данные, а затем вам нужно будет вызвать Invoke, чтобы обновить GUI, потому что это не может быть сделано в другом потоке.
Альтернативой является использование таймера и проверка внутри.событие Tick, но если проверка занимает много времени (и может занять много времени, если ваш сервер занят или если имеется блокировка таблицы), то это заблокирует ваше приложение, поэтому я бы рекомендовал не использовать этот подход.