The next day at Elsinore Castle, Hamlet tells Horatio how he plotted to overcome Claudius’s scheme to have him murdered in England. He replaced the sealed letter carried by the unsuspecting Rosencrantz and Guildenstern, which called for Hamlet’s execution, with one calling for the execution of the bearers of the letter—Rosencrantz and Guildenstern themselves. He tells Horatio that he has no sympathy for Rosencrantz and Guildenstern, who betrayed him and catered to Claudius, but that he feels sorry for having behaved with such hostility toward Laertes. In Laertes’ desire to avenge his father’s death, he says, he sees the mirror image of his own desire, and he promises to seek Laertes’ good favor.
Their conversation is interrupted by Osric, a foolish courtier. Osric tries to flatter Hamlet by agreeing with everything Hamlet says, even when he contradicts himself; in the space of seconds, he agrees first that it is cold, then that it is hot. He has come to tell them that Claudius wants Hamlet to fence with Laertes and that the king has made a wager with Laertes that Hamlet will win. Then Osric begins to praise Laertes effusively, though Hamlet and Horatio are unable to determine what point he is trying to make with his overly elaborate proclamations. Finally, a lord enters and asks Hamlet if he is ready to come to the match, as the king and queen are expecting him. Against Horatio’s advice, Hamlet agrees to fight, saying that “all’s ill here about my heart,” but that one must be ready for death, since it will come no matter what one does (V.ii.222). The court marches into the hall, and Hamlet asks Laertes for forgiveness, claiming that it was his madness, and not his own will, that murdered Polonius. Laertes says that he will not forgive Hamlet until an elder, an expert in the fine points of honor, has advised him in the matter. But, in the meantime, he says, he will accept Hamlet’s offer of love.
They select their foils (blunted swords used in fencing), and the king says that if Hamlet wins the first or second hit, he will drink to Hamlet’s health, then throw into the cup a valuable gem (actually the poison) and give the wine to Hamlet. The duel begins. Hamlet strikes Laertes but declines to drink from the cup, saying that he will play another hit first. He hits Laertes again, and Gertrude rises to drink from the cup. The king tells her not to drink, but she does so anyway. In an aside, Claudius murmurs, “It is the poison’d cup: it is too late” (V.ii.235). Laertes remarks under his breath that to wound Hamlet with the poisoned sword is almost against his conscience. But they fight again, and Laertes scores a hit against Hamlet, drawing blood. Scuffling, they manage to exchange swords, and Hamlet wounds Laertes with Laertes’ own blade.
The queen falls. Laertes, poisoned by his own sword, declares, “I am justly kill’d with my own treachery” (V.ii.318). The queen moans that the cup must have been poisoned, calls out to Hamlet, and dies. Laertes tells Hamlet that he, too, has been slain, by his own poisoned sword, and that the king is to blame both for the poison on the sword and for the poison in the cup. Hamlet, in a fury, runs Claudius through with the poisoned sword and forces him to drink down the rest of the poisoned wine. Claudius dies crying out for help. Hamlet tells Horatio that he is dying and exchanges a last forgiveness with Laertes, who dies after absolving Hamlet.
The sound of marching echoes through the hall, and a shot rings out nearby. Osric declares that Fortinbras has come in conquest from Poland and now fires a volley to the English ambassadors. Hamlet tells Horatio again that he is dying, and urges his friend not to commit suicide in light of all the tragedies, but instead to stay alive and tell his story. He says that he wishes Fortinbras to be made King of Denmark; then he dies.
Fortinbras marches into the room accompanied by the English ambassadors, who announce that Rosencrantz and Guildenstern are dead. Horatio says that he will tell everyone assembled the story that led to the gruesome scene now on display. Fortinbras orders for Hamlet to be carried away like a soldier.