Эта страница в документации MS, охватывающая асинхронность в приложениях Windows Forms, гласит:
Вы можете вызвать EndInvoke для получения возвращаемого значения из делегата, если это необходимо, но это не требуется. (выделено мной)
Эта страница, охватывающая общий случай асинхронных делегатов, описывает что-то другое:
Независимо от того, какой метод вы используете, всегда вызывайте EndInvoke для завершения асинхронного вызова.
Эти два, кажется, находятся в прямом конфликте.
Что верно? Может кто-нибудь объяснить?
см. также сообщение Фила Хаака.
Связано: Опция EndInvoke необязательна, необязательно, необязательно?