Broadcast to Broadcast
Non-Broadcast to Non-Broadcast
Point-to-Point to Point-to-Point
Point-to-Multipoint to Point-to-Multipoint
Broadcast to Non-Broadcast (adjust hello/dead timers)
Point-to-Point to Point-to-Multipoint (adjust hello/dead timers)
So the first question that comes in mind is why only these combinations will work and why some not ? For example what if I configure Network Type Broadcast on one side and Network Type Point-To-Point on other. Will it work ? And the Answer is NO.
The reason why some network types are not compatible with some other is based on a fact and that is - Network Types that elects/requires DR election in first place will be only compatible with other types that also elects/requires DR election. On the other hand Network Types that doesn't elect/requires DR are only compatible with network type that also doesn't elect/requires DR election. So that's why these two categories don't work with each other. Now considering this criteria it's very easy to remember the list that I write up above.
Now if you try to break this criteria and try to match Network Type that Elects/Requires DR with Network Type that doesn't Elects/Requires DR ,you will see that although the neighborship comes up between OSPF routers but routes are not getting exchanged.
So based on this we can say that it's possible that two ospf routers can become neighbor but are not adjacent (No Route Exchange). But it can never be possible that two routers become Adjacent but not neighbors.
Now lets jump into the scenario to test this. In my topology here I am gonna Initially configure all Three routers with OSPF Network Point-To-Multipoint. Later I will jump over to R2 and will change Network Type to Point-To-Point. And we will see if everything is working fine. I will also add some little troubleshooting later in this scenario to make it more interesting. Because although the list I provided above is fine but sometimes things doesn't work as expected. So in such case you have to do some basic troubleshooting to fix the issues.
Just one more thing I want to add before jumping into config and that is never forget to match the HELLO Timer and DEAD Timer values to match the other side after changing the Network Type.
So here is the quick config: