I have mentioned previously on this site that hybrid Exchange is the best way to migrate to Office 365.
Hybrid enables rich co-existence between your on-premises Exchange server and Office 365 / Exchange Online in the cloud.
Hybrid is emphatically NOT a “special” version of Exchange Server, nor does it require special licensing. You can enable a hybrid connection using the hybrid wizard on Exchange 2010, 2013 or 2016. After that, the migration process looks a lot more like an on-prem migration (except it’s not).
If you are stuck all the way back on Exchange 2007, no worries! You can install Microsoft Exchange 2013 (mailbox & CAS role) and activate it using a free product key from Microsoft, specifically made for executing hybrid migrations. Very often, we end up installing Exchange 2013 as a “bridge” to Office 365, for example.
Note: if you plan to host some of the mailboxes on-premises yourself, or if decide in the future to change your product key from “hybrid only” to a full Standard or Enterprise version of Exchange in order to work with on-premises mailboxes, then you will need to obtain the proper licensing before doing so. Use the following PowerShell command to set your new product key:
Set-ExchangeServer -Identity <HybridServerName> -ProductKey <ProductKeyHere>
Go here and follow the directions to obtain your free hybrid Exchange product key. Happy migrating!