Apart from being a short movie, what might be the reason for this tactical disaster? :)
The Rebels/Resistance have shown a consistent tactic throughout their history; basing themselves somewhere remote, striking at Imperial targets and then, when confronted, bugging out to a rendezvous point and a new base.
In this instance the First Order have a new and highly effective tactic of their own, the capacity to follow ships through hyperspace. Although wasting time destroying the base (and consequently allowing ships to enter hyperspace) would have been a tactical blunder during Imperial times, the First Order already know where the Resistance have gone by tracking the fleet as it leaves and working out where they're going. On top of that, you have the added benefit of being able to work out where their new secret base is as well.
You might wish to note that a key aim here was to create a "demonstration" of the First Order's power rather than simply killing everyone and everything in the most expeditious way possible.
“Perfect,” he said. “I have my orders from Supreme Leader Snoke himself. This is where we snuff out the Resistance once and for all. Tell Captain Canady to prime his Dreadnought. Incinerate their base, destroy those transports, and obliterate their fleet.”
“Reorient the topside batteries to target the Resistance fleet,” Canady ordered. “And prep our fighter squadrons for launch.”
“General Hux ordered no fighter deployment,” objected Bascus. “He feels a demonstration—”
I think without a novelization and insight into what the First Order you can't really say for certain. However, I would like to offer a theory (which is also only speculation): given that the First Order no longer had a planet killer, but instead had Hyperspace tracking, the Resistance could potentially have had an easier time hiding on the planet than by escaping with space ships.
Unlike Hoth, D'Qar seems to be a rather hospitable planet and if the rebels had scattered using ground vehicles it would at least have taken quite some time to track them down. Looking at Endor it does not seem that there is good scanner technology which can make out specific lifeforms on the ground.
- The First Order was playing to their strength.
- The Rebel Fleet was inadequate to fight them and they knew it; hence the escape.
- The First Order knew they had the upper hand in a space battle; hence their patience.
So this all comes down to military strategy... which can be a much longer explanation. If you would like that, let me know and I will throw in some more details.
However, it really boils down to fighting the enemy the way you know you can win. The First Order knew that their firepower with Snoke's vessel at the fore was beyond what the Rebels had. They know that when it came down to it, while they may lose some of their fleet in a straight up fight, they would still have become victorious, given numbers and the ease of taking out at least one craft every minute or so with Snoke's ship alone... not including all the other firepower they had available.
If the rebels ran, with their new tracking ability, the First Order would be able to chase them and continue the fight.
Therefore, while the battle is in space the Rebels can not win in a fight and can not run.
Let's look at a battle on the ground:
First - They could destroy the fleet and strand them on the surface. This however requires a blockade to keep their friends from coming to rescue them. Without a blockade (i.e. resources that could be useful elsewhere) someone can come rescue them and then they escape.
Second - Similar to the first, you strand them there and bombard from space. However, without a confirmation of enemies destroyed you will never know when the job is done and when you can leave. (i.e. resources that could be useful elsewhere)
Third - Kind of a combination of the first two plus a new element... Send troops down to the planet. This is dicey. Boots on the ground is always a risk. First you still require the blockade in orbit to keep others from rescuing or providing reinforcements (i.e. resources that could be useful elsewhere); but now you have also tied up your ground forces in a ground war. While these can sometimes be decisive and quick, they can sometimes be long and arduous. This drains resources (food, power, etc.), time, initiative, moral, etc.
And with all of these options if the rebels escape, even just some, you lose and you have wasted time and resources.
But by allowing them to escape, they are fighting on your battlefield where you have the upper hand. As seen in the movie, so long as they were in space the Rebels were on the defensive and had no chance of victory. Even Poe's plan was simply to disable their ability to track them. That is not a win. It is a stalemate.
It's just good tactics. A single shot would take out the base and any grounded ships and any ground-based weaponry, whereas it could have taken several shots to deal with the cruiser, potentially allowing more ships to join the battle and giving any rebels remaining on the base time to start shooting back. (I don't recall there actually being any ground-based weaponry or combat ships left on the ground, but Hux had no way to be certain of that.)
Besides, according to Wookiepedia [edit: but see cleaner's comment] the Dreadnought's main weapons were specifically designed and optimized for planetary assaults. It was the job of the rest of the fleet to take out whatever part of the rebel fleet had reached space. The Dreadnought no doubt would have helped had it not been otherwise occupied, but it wouldn't have played the primary role in any space battle that might have taken place.
At the start of the movie, Hux is proven to be a grandstanding idiot who prefers to be flashy than effective. Wouldn't be out of character for him to want to destroy the base first to show off to the rebels before finishing them off.
He seems to have learned from his mistakes by the end of the movie, though.
Before the Dreadnought arrived, there was Hux's ship and a couple/few Star Destroyers. My tactics would be to let the Dreadnought fire on the surface and use the Destroyers to engage the fleet before jumping into hyperspace. And since the orders is to give no quarter, take no prisoners, if I saw a single X-Wing approach any ship, I would have blasted it right away without hesitation and without caring what, if any, messages were to be communicated. I would have also scrambled TIE Fighters even before the Dreadnought arrived. They would be flying the perimeter in formation waiting for the word to hit the fleet. This would have taken care of all those slow bombers before they even had a chance to reach the Dreadnought. Instead of being smart, they were arrogant. Also, I believe Holdo was with the First Order and she was the reason they were able to be tracked. And she sacrificed herself to redeem herself after she realized what she had done.