The difference between CheckAccess and VerifyAccess is that CheckAccess returns a Boolean that specifies whether the calling thread has access to this DispatcherObject and VerifyAccess throws an exception if the calling thread does not have access to the this DispatcherObject.

The following example uses VerifyAccess to determine whether a thread has access to the thread that a Button was created on. If the calling thread does not have access, an InvalidOperationException is thrown.