Moving mailboxes to an Exchange 2007 server is a time consuming task in an inter-forest migration and you can only use the move-mailbox cmdlet. By default, you can only move 4 mailboxes simultaneously. This makes things very difficult if you have thousands of mailboxes to be moved.
You can increase the number of mailbox move threads from 4 to a maximum of 30 by adding a switch to the move-mailbox cmdlet. Run the command
Get-Mailbox -Server CurrentServerName | Move-Mailbox –TargetDatabase “NewServerSG1DatabaseName” –MaxThreads 30
Though you can specify any value between zero and 30, make sure you give an appropriate value depending upon your network.