The primary difference between DMVPN Phase I and DMVPN Phase II is that, in DMVPN Phase II, spoke routers are able to create dynamic tunnels with other spoke routers, whereas in DMVPN Phase I, they are not. The primary benefit of dynamic spoke-to-spoke tunnels is reduced traffic load on the hub router.
As for the configuration difference is that you dont need to configure the static config on the spoke but the dynamic config instead .
so on each spoke do not use the command destination . use the command
(config-if)#tunnel mode gre multi
(config-if)#ip nhrp map multi ( ip address of interface hub )
do not forget to use the command on the hub on the interface tunnel
(config-if)# no ip next-hop-self ei ( as )
if not the route will always pass trough the hub .
The Difference between DMVPN phase 2 and 3 :
Lack of scalability is the primary drawback of DMVPN Phase II that can be resolved by implementing DMVPN Phase III.
Scalable routing is achieved by configuring a hub router to inject a default route or to summarize routes advertised to other spoke devices; however, such a configuration causes the next-hop address on spoke routers to be the IP address of the hub. DMVPN Phase III is a more scalable solution because it enables a hub to notify spoke routers of suboptimal traffic paths.
So for this to work you need to configure the Hub with :
(config-if))#ip summary-address eigrp (as) ( summary address ) ( on the tunnel interface of the hub )
(config-if))#ip nhrp redirect
and on each spoke :
(config-if))#ip nrhp shortcut