When a user mailbox is created in Exchange Online by the "Create Remote Mailbox" feature in Exchange Server 2010 and the mailbox of this user needs to be moved back to the on-premise Exchange 2010 environment, it will end up in the error "Exception has been thrown by the target of an invocation.
This was clearly a bug in Exchange Server 2010 SP2.
After some research this error is created because during the initial mailbox creation the mailbox GUID of the Exchange Online Mailbox is not set in the remote mailbox user properties. This will end up in a GUID mismatch (appearantly the move mailbox action uses this property to match the ID's of the user) and the move mailbox action end with the error "Exception has been thrown by the target of an invocation."
There is a workaround for this problem by creating a remote powershell session, recieving the mailbox properties of the user mailbox that needs to be moved, copy the GUID and pasting it manually in the remote mailbox properties in the on-premise environment. See http://community.office365.com/en-us/w/exchange/566.aspx for more information on how to do this.
As you can imagine, this workaround is pretty time consuming and not very efficient if you need to do this for more then 50 users at the same time.
Now since last week Exchange Service Pack 2 Update Rollup 3 (UR3) is out and this issue is allocated on the fix list. See http://support.microsoft.com/kb/2698960
I advise you all to install UR3 as soon as possible. You can download UR3 for Exchange Server 2010 SP2 at http://www.microsoft.com/en-us/download/details.aspx?id=29899.
If you have a Multi server Exchange Environment, please be aware to install UR3 on all nodes in the same maintenance window to avoid rare problems.
For a complete list of all issues fixed in UR3 see http://www.microsoft.com/en-us/download/details.aspx?id=29899