What’s wrong with calling Invoke, regardless of InvokeRequired?
From non-UI threads we can’t touch the UI – very bad things can happen, since controls have thread affinity. So from a non-UI thread we must (at a minumum) call Invoke or BeginInvoke. For UI-threads, however – we don’t want to call Invoke lots of time; the issue is that if you are already on … Read more