*Warning: This article contains spoilers for Happy Valley season 3 episode 6*
fans have had to wait a long seven years to find out the outcome of Catherine (Sarah Lancashire) and Tommy’s (James Norton) deep-rooted feud.
While the previous season of Sally Wainwright’s drama wrapped up in 2016, the final episode ever has landed – and it was as ‘’ as Neil Ackroyd actor Con O’Neill promised.
With Tommy still on the run, Ryan uncertain if he will flee with his dad to Spain and Catherine fearing for her life, the bumper 70-minute instalment was packed with tension.
But how did events unfold in the Calder Valley? Here is a breakdown of that epic final episode of Happy Valley.
What happened at the end of Happy Valley season 3 episode 6?
Ryan does the right thing
Ryan came clean about everything he knew about Tommy’s plans – even handing over his game console following their conversation.
He told both officers and his granny about Tommy’s plans to escape to Spain, reassuring Catherine he never once considered going with him.
Breaking down, after finally realising that Ryan is nothing like his father, a relieved Catherine tells her sister that he is a ‘well-adjusted’ normal teenage boy.
Clare mends bridges with Catherine
Ryan – who is somewhat the hero of episode 6 – has a very mature chat with Catherine and begs her not to fall out with Clare over him.
He reminds her that when he was a baby, and everyone including his own grandfather and uncle abandoned him, it was only Clare who stuck around and supported Catherine.
Seemingly taking his advice to heart, Catherine opens up to Clare around Nev’s table and agrees to stay for dinner, which for the no-nonsense cop, is a very big deal.
Clare also rushes to Catherine’s side after her epic showdown with Tommy and warmly embraces her.
Tommy suddenly develops a moral conscience
In the most surprising twist of the finale, a fatally wounded Tommy takes refuge in Catherine’s abandoned home and thumbs through old photo albums of Becky and Ryan.
After noticing the window has been smashed, Catherine creeps into her house and confronts Tommy, who has just knocked back a killer cocktail of pills and alochol.
The criminal insists that he loved Becky and has U-turned on his decision to kill Catherine because she has given his son, Ryan, a wonderful life.
Instead, he douses himself with petrol and sets himself alight, and later dies after falling into a coma.
With TLR finally dead, Catherine, who left the showdown without so much as a scrape, presumably now has the closure she needs to book her dream trip to the Himalayas.
Darius Knezevic is finally behind bars
The police have been desperate to nick Darius (Alec Secareanu), an aspiring local politician and master of the criminal underground, for years.
Thanks to Tommy, in his dying moments, telling Catherine that the mob boss was responsible for the murder of Gary Gagowski, officers finally have ground to arrest him.
They also hunt down all of his muscle – effectively disbanding his entire empire and hold over the Calder Valley – and hand them hefty prison sentences.
Faisal isn’t going to get away with Joanna’s murder
It seemed that Rob Hepworth (Mark Stanley) was squarely in the frame for Joanna’s (Mollie Winnard) murder, given his history of domestic violence.
While Faisal (Amit Shah) might have believed he’d committed the perfect crime, Catherine’s contact reveals the pharmacist to be behind the illegal prescription drug dealing.
As Catherine points out, as she’s tipping off her boss, Faisal lives ‘not 100 yards away’ from Joanna, who had been buying diazepam from him.
While we never see Faisal squirm and arrested (unfortunately) it’s safe to assume he will be found out.
Happy Valley is available to stream on iPlayer.