Here's a notion to add some more drama and reduce dice rolling for the DM.
Resolve the players attack and the monsters attack with the same die roll.
PC rolls normal to hit chance. If the die roll (no the final score) is equal to or less then their own AC + monsters HD then the monster get's a hit in on the PC. A monster can cause no more hits then normally accounted for in it's abilities, most damaging blow should be rolled first.
A die roll of 20 and the monster doesn't get the hit in regardless of how tough it is.
A die roll of 1 a monster gets a hit in, regardless of the number of attacks the monster has.
Surprised foes don't get a counter attack.
Missile attacks don't auto hit on a 20 and don't get a counter attack on a 1.
Counter attacks against missile fire are only possible if the target has ability to reach or is armed with a missile weapon.
Attackers expose themselves to being hit with every attack they make under such a system. Attackers can also end up absorbing blows their friends may suffer otherwise.
So we have every blow being a chance of getting harmed, a built in critical and fumble result (auto counter, no counter attack) without lot's of extra mechanics and dice rolling.
This idea hasn't been tried by me just yet but it was just cool enough I had to pass it on.