Here is quick list of things that must match between two OSPF Neighbors in order to form adjacency.
1. Area-ID must match.
2. Subnet Mask of interface (Except For Point-To-Point
3. Authentication Type & Authentication Password
4. Stub Flag (AKA E-Bit)
5. Timers (Hello & Dead)
6. Compatible Network Types ( Broadcast Vs Non-Broadcast / P2P
Vs P2M Vs P2M non- broadcast)
8. Capability LLS (Could Be)
9. Passive Interface
Note:- Although MTU is not part of requirements in General but it must match in order to exchange database. You can however make router not to consider it as part of negotiation by using command " ip ospf mtu-ignore". Command only needs to put on side with lower MTU supported. Another cool new way to do it is " system mtu routing