Javert is once again on the hunt for Jean Valjean. Thénardier has revealed under questioning that Jean is alive and in Paris. No matter that workers’ groups are discussing revolution and several illegal arms factories have been discovered; Jean is the most important target for Javert right now – and Jean is probably behind any tumult anyway.
Éponine and her sister are Azelma are released from prison while their father is ordered to the prison hulks in which Jean once languished. But Thénardier escapes before being sent away by faking his death; Madame Thénardier is left alone behind bars.
Thénardier hides out in the sewers with the friends who helped him attack Jean, and they plan to take revenge on Jean by robbing and killing him in his home – the friends followed him after he escaped from them, so they know where he lives.
Éponine searches out Marius and finds him sitting longingly in the Luxembourg Gardens, pining after Cosette. Éponine offers to show him where Cosette lives, and he eagerly accepts – as long as she doesn’t tell her father the address. When she brings Marius to the house, he tries to offer her money and she refuses, offended. She doesn’t want his money; she wants his love.
Jean leaves Cosette for several days in order to dig up more money from his stash in the woods. While he’s away, Cosette discovers a love letter from Marius in the house’s garden. They meet in the garden at night. She swoons, he catches her, they kiss.
Éponine follows Marius to Cosette’s home one night and sees her father and his cronies steal up as she waits in the shadows outside the garden wall. She interrupts them as they discuss killing Jean while they pick the lock. Threatening to scream, she drives them away – but not before her father reveals that he’d let one of his cronies kill her if necessary.
When Jean returns to Paris, he informs Cosette that they will soon be moving to England; he can only outrun Javert for so long. That night, Cosette tells Marius her father’s plan. Marius promises to figure out a way to stay together; he will have worked everything out when they meet again tomorrow afternoon.
But events conspire against Marius. He visits his grandfather Gillenormand, who has been lonely in Marius’s absence, and requests permission to marry Cosette. Gillenormand, eager to please, offers Marius two thousand francs to keep Cosette comfortable, but advises Marius not to marry her; just keep her as a mistress. Insulted by Gillenormand’s dismissal of his beloved, Marius leaves without the money. Gillenormand weeps, knowing he has lost his grandson.
Worse for Marius, Jean decides to change dwellings again, that very day. Éponine has warned him that her father is planning on robbing the house that night, so Jean packs up for another home. Afraid that she will lose Marius, Cosette leaves a letter with the new address in the garden. But Éponine finds it before Marius does.
The same day, a rebellion against the government begins. A popular general who fought in the first French Revolution has died, and worker and student groups unhappy with the restoration of the monarchy have decided to launch major demonstrations at his funeral. As Enjolras, one of Marius’s student friends, explains, the demonstrators plan to provoke the army into attacking. As the general’s coffin is paraded through the streets, someone shoots a soldier. The army charges into the mob of people, who scatter into Paris’s narrow streets and fight back against the separated soldiers. Driving them off, the revolutionaries quickly set about constructing barricades in the streets.
Although his friends have joined the rebellion – some, like Grantaire, less wholeheartedly than others – Marius is too filled with love for Cosette to risk his life. When he arrives at the garden of Cosette’s now-empty house, he finds nothing but Éponine. She tries to redirect his love towards her, but he instead picks up on her passing comment that his friends are all at the barricades. With the loss of Cosette, he now has no desire to live; he goes to join his friends, leaving Éponine brokenhearted.
Cosette doesn’t trust that her letter will find Marius. She tries to sneak out to meet him at the appointed time, but Jean catches her and keeps her from leaving the house; the streets are too dangerous. Cosette cries out that she hates him. And Jean soon discerns why: he is able to read her letter to Marius in the residue left on the iron she pressed over it to dry the ink. “She’s gone,” he says sadly to himself.
As the revolutionaries guard the barricades, they are joined by various allies: the young Thénardier boy Gavroche, a resourceful pickpocket who helps other impoverished children survive; the old revolutionary Mabeuf; and an undercover Javert – he believes he will find Jean leading the forces at the barricade. Unfortunately for Javert, Gavroche recognizes him, and the police inspector is apprehended and tied up.
The army attacks the barricade, wounding several revolutionaries before they are driven back. Mabeuf demands that he be the one to climb the barricade and hoist the flag as the army retreats. But as he waves it above the stacked dressers and chairs, the old man is shot. He plants the flag and falls back, dead, as a newly arrived Marius watches from the shadows. As the army begin to overwhelm the barricade, Marius overcomes his fear and grabs a powder keg and a torch. Advancing on the barricade, he threatens to blow it, the army, and himself up if they don’t retreat. Once again, they fall back.
As Marius climbs down from the barricade, a dying soldier raises his pistol to shoot him. But someone jumps in the way.
It is Éponine, who is fatally wounded. As she gasps her last breaths, she gives Marius Cosette’s letter with her new address. Éponine tells Marius she loved him, and dies.
Marius has now joined the fight. He sends a letter via Gavroche to Cosette, telling her he is on the barricade. If he survives, they will spend their life together; if he dies, he died loving her.
Jean receives the letter instead of Cosette. Reading it, he makes a decision. He grabs some things, locks the door, and walks off into the streets.