Let's look at the "Why does Hamlet take so long to avenge his father's death" question from a different perspective, and ask instead, "Why did it take Hamlet less than five seconds to decide to kill Polonius when he was hiding behind the arras?"
The relative time span of the play is between six and nine months, from the time the ghost of Hamlet's father tells Hamlet that he was murdered by Claudius until the time that Hamlet actually gets around to killing Claudius at the end of the play, when Hamlet is already dying and has little to lose. Hamlet took several months to think about killing Claudius, and he explored every possible excuse not to do it.
For all of his agonizing over killing Claudius, he kills Polonius extremely quickly. Hamlet impulsively thrust his sword through the curtains without even knowing for sure who was behind them.
Whoever was behind the curtain was no threat to Hamlet: Polonius didn't jump out from behind the curtain waving a sword at Hamlet—he never even showed his...
(The entire section contains 3 answers and 1131 words.)