Act III, Scene iii is where Hamlet sees Claudius praying before confession. This is an important moment, and shows the depth of Hamlet's hate for Claudius. The reason that Hamlet is hesitant to kill Claudius while he is at prayer is stated, clearly, by Hamlet to himself:
Now might I do it pat, now he is praying;
And now I'll do't. And so he goes to heaven,
And so am I revenged. That would be scann'd.
A villain kills my father; and for that,
I, his sole son, do this same villain send
To heaven. (80)
Literally, while Hamlet is watching his uncle/stepfather from a hidden position, Hamlet is saying that he could "do it pat" -- kill Claudius, right then, and right there. Claudius is kneeling, and presumably unarmed, and Hamlet has the advantage. So what stops him? It is not scruples -- it is the opposite. It is a fiendish desire to make Claudius suffer not just his death in this moment, but for eternity in the fires of hell for his sin of killing Old King Hamlet.
Hamlet reasons that, if he kills Claudius while he is praying, sincerely (as he has just expressed regret for his sin in his soliloquy, if he has not regretted the fruits of it -- his crown, queen, and kingdom) to God, that God may well forgive Claudius and take him up to heaven. The idea of Claudius in the bosom of the Lord enrages Hamlet so much that he cannot bring himself to do it (or is this just an excuse for his actual scruples against killing someone in cold blood -- we are not entirely certain). Hamlet is disgusted with the idea of killing the forgiven, heaven-bound Claudius. He says bitterly:
O, this is hire and salary, not revenge!
He took my father grossly, full of bread,
With all his crimes broad blown, as flush as May;
And how his audit stands, who knows save heaven?
This is "hire and salary" -- merely doing a favor for Claudius, to kill him thus, Hamlet says! He compares the crime of Claudius who, when he killed his father, Old Hamlet's crimes (sins, any of them, small or large) were "broad blown" -- that is, any of the sins he had committed since his last confession were unforgiven as yet. Old Hamlet was "full of bread" -- meaning he had just eaten, and therefore couldn't receive Holy Communion (there was the church law of fasting before Communion) and get the grace of God before he died. Hamlet is saying, bitterly, but quite rightly, that Claudius didn't give Old Hamlet any chance to be forgiven of his sins and sent to heaven (as evidenced by the fact that Old Hamlet's ghost is wandering the grounds of Elisinore, rather than in heaven with God), so young Hamlet will not give Claudius the same consideration. He will, he is saying, kill Claudius
When he is drunk asleep; or in his rage;
Or in the incestuous pleasure of his bed;
At game, a-swearing, or about some act
That has no relish of salvation in't
Then trip him, that his heels may kick at heaven,(95)
And that his soul may be as damn'd and black
As hell, whereto it goes.
He will kill Claudius when he is drunk and passed out, or angry, or in bed with his mother, or gambling, or swearing, or some other thing which has no "relish of salvation in't", and thus make certain Claudius' soul goes to hell.