Warning: contains spoilers for The Flash season 3 (well, obviously).
The Flash season 3 was a bit of a confusing one. Between all the timeline alterations and villain reveals, it was a lot to take in. So, to bring you back up to speed in time for The Flash season 4, we’ve put together this recap of the show’s third run.
In a landmark moment/cliff-hanger ending that you probably haven’t forgotten, season 2 ended with Grant Gustin’s Barry Allen travelling back through time to the night The Reverse-Flash (aka Eobard Thawne, here played by Matt Letscher) killed his mum.
Subsequently, The Flash season 3 began in a brand new reality known as ‘Flashpoint’, an altered timeline where Barry’s mum survived…
Season 3 begins with Barry – having averted the death of his mother – bringing Eobard back to the present and locking him in a speed-dampening cage. At one point, Eobard yells, “Who’s the villain now, Flash?!” Prescient words, indeed.
In this new version of the present day, Keiynan Lonsdale’s Wally West is Central City’s premier protector, Kid Flash. He gets crime-fighting assistance from his sister, Candice Patton’s Iris. Meanwhile, Carlos Valdes’ Cisco is a billionaire tech genius, and Danielle Panabaker’s Caitlin is an eye doctor for kids. Jesse Martin’s Joe is drinking a lot and getting in trouble at work.
Barry’s memories of the original timeline begin to fade, as the new reality begins to become permanent. Barry has something of a moral crisis: he enjoys spending time with the resurrected Nora and Henry Allen (played by Michelle Harrison and John Wesley Shipp, respectively), but he also realises that this version of reality might not be best for the rest of Team Flash. This comes to a head when Wally is mortally wounded in a clash with Edward Clariss (aka The Rival), a new evil speedster played by Todd Lasance.
Just as Eobard predicted, Barry returns to The Reverse-Flash’s cell and asks his nemesis to go back in time and kill his mother again. Barry believes that this will turn everything back to normal, but he’s very wrong about that.
Barry’s attempt at correcting the timeline didn’t work out as he’d hoped. His parents are dead again, but so is Cisco’s brother Dante (played by Nicholas Gonzalez), who was alive in the original timeline. Plus, Joe and Iris are not talking. And Barry has a new lab partner – Julian Albert, played by Tom Felton – who he doesn’t get along with. Essentially, this new ‘corrected’ timeline sucks.
Barry attempts to go back in time again and make some more changes, but Jay Garrick (Earth-Three’s version of The Flash, who’s also played by John Wesley Shipp) pulls him out of the Speed Force and gives him a talking to: Barry has to learn to live with his mistakes, as the original timeline can never properly be remade.
Edward Clarris (who has no powers in this timeline) is confronted by a hooded figure named Alchemy, who promises to restore his speedster abilities from the Flashpoint timeline. Barry defeats the repowered Clarris, who is then killed in his cell by the metallic speedster Savitar. Also, at this point, the audience learns that Caitlin has gained ice powers – like her evil Earth-Two doppelganger, Killer Frost – thanks to Barry’s meddling with the timeline.
Jesse (played by Violett Beane) and her dad (Earth-Two’s Harrison ‘Harry’ Wells, played by Tom Cavanagh) return to Earth-One. Jesse reveals that she gained speedster powers from the dark matter explosion at the end of season 2. Wally is jealous, and soon works out that he is having visions of his powered life from Flashpoint timeline, just like Clarris did.
Jesse and Barry work together to stop Magenta (Joey King), another repowered Flashpoint villain that the hooded menace Alchemy has restored. Harry decides to support Jesse’s superhero career, and Jesse gets her own speedster costume as a result.
She sticks around to get some training from Barry, and the pair work together again to defeat emergent new rogues Mirror Master (Grey Damon) and Top (Ashley Rickards). Barry ends up trapped in a mirror, and Caitlin secretly uses her ice powers to get him out. Shortly after this, Caitlin seeks help from her mother – Carla Tannhauser, a scientist played by Susan Walters – about her condition.
Harry returns to his own Earth, and the gang recruits Earth-19’s H.R. Wells as his replacement on the team. This Wells turns out to be an author rather than a science genius, and he likes playing with drumsticks. In his first adventure with Team Flash, the gang goes up against a giant hologram of Godzilla-like monster. Barry stops Tom Felton’s Julian from the shooting the person behind this destructive deception, who turns out to be a 15-year-old boy. This experience causes Barry and Julian to put aside their differences, somewhat.
In episode 6 of the season, there’s lot of confiding: Wally tells Barry about his speedster dreams, and Barry explains to Wally that he was Kid Flash in the Flashpoint timeline. Meanwhile, Caitlin reveals her ice powers to Cisco. He then vibes her, and learns that Vibe and Killer Frost will have a proper fight at some point in the future. Barry, later in the episode, explains to Caitlin that her new powers have manifested thanks to Flashpoint.
Alchemy summons Wally, and Team Flash eventually decide on a plan: to let Wally meet with Alchemy, so they can determine the villain’s location. Barry and Joe follow Wally with a SWAT team, and they do their best to confront Alchemy. However, Savitar shows up, enacting his first proper confrontation with the team.
The super-fast Savitar kills the SWAT team and takes Barry away, while Wally is encased in a cocoon by Alchemy. (Savitar and Alchemy are both voiced by Tobin Bell, fact fans!)
Kevin Smith directed episode 7 of the season. It opened with Savitar taking Barry on a beat-down tour of Central City, clearly displaying superior speed and fighting skills. Caitlin and Cisco showed up and attacked Savitar, and the villain fled. However, using her powers has a big downside for Caitlin: now, the Killer Frost side of her personality has taken over.
Killer Frost breaks into the CCPD and interrogates one of Alchemy’s acolytes, seeking a chance to confront Alchemy and have him fix her. Meanwhile, Joe breaks Wally out of his cocoon.
Wally now has speedster powers, but they aren’t particularly stable. Caitlin’s personality re-emerges, and it becomes apparent that Wally needs treatment. She concocts a serum to stabilise him. Julian – who got caught up in the whole Killer Frost incident – agrees to keep Caitlin’s secret, on one condition: Barry resigns from the CCPD. Barry agrees to this.
Then, Team Flash takes part in the huge Invasion crossover event with Arrow, Supergirl and Legends Of Tomorrow. Across four episodes of fun, the assembled heroes of The CW go up against The Dominators, an invading alien species.
In these episodes, everyone learns about Flashpoint. This happens because Barry, many years in the future, sends a message through time to Rip Hunter of the Legends: future-Barry told present-day-Rip that Flashpoint had changed the timeline, and the speedster warned the time-traveller not to trust him. Tempers flare in the crossover episode, and Arrow’s John Diggle (David Ramsey) learns that Flashpoint – for some reason – changed the gender of his child.
In the end, everyone just about puts their issues with Barry to the side for long enough to defeat the invading aliens. Also, in an important piece of housekeeping, Cisco creates a device that will allow Supergirl to move between dimensions with less hassle.
After the crossover comes the important Rachel-Talalay-directed episode The Present. In this one, Barry works with Jay to track down and defeat Alchemy. They put the important McGuffin known as the Philosopher’s Stone back into its box, which makes Savitar disappear. They also unmask Alchemy, revealing that Barry’s grumpy former lab partner Julian, who only came into existence after Flashpoint, was the man beneath the mask.
Julian explains that Savitar lured him – using visions of his dead sister – to the burial site of the Philosopher’s Stone. This stone allows Savitar to take a physical form. Since locating it, Julian has experienced blackouts, during which time he’s acted as Savitar’s lackey, Alchemy.
While the stone is Team Flash’s possession, Savitar encourages Cisco – using visions of his dead brother – to open the box and allow him back into existence. Caitlin intervenes and Savitar’s precious stone stays inside the box. Savitar remains intangible.
Team Flash finds a way to use Julian to communicate with Savitar. Tobin Bell’s voice comes out of Tom Felton’s mouth. Savitar displays a keen knowledge of Team Flash, and intones a dark prophecy: one of them will fall, one will betray the others, and one shall suffer a fate worse than death.
Savitar also explains that he is imprisoned because of Barry. He also utters an important-later-on line of dialogue: “I am the future, Flash.” (That comma, as it turns out, is very much optional.)
Jay and Barry decide to lob the Philosopher’s Stone into the Speed Force, so that Savitar cannot use it again to return to the physical world. They succeed in doing this, but Barry is thrown forward in time as a result. In the final moments of the mid-season finale, Barry witnesses a shocking future event: Savitar stabbing Iris to death.
Barry returns to the present. Julian is no longer under Savitar’s control. Wally gets a Kid Flash costume. Barry gets his job back. Jay tells Barry that the future is not set, but Barry – understandably enough – is still shaken by the things he saw in the future.
As well as the death of Iris, Barry also witnessed a future news report, which alludes to several things: the villain Plunder going on trial, the Music Meister getting a book deal, Caitlin becoming Killer Frost, the STAR Labs museum closing, and so forth.
Over the next few episodes, Team Flash tries to change the outcomes of these events, so they don’t match the news report Barry saw in the future. If they can change small details like this, perhaps they can stop Iris from dying.
For instance: the future news report mentioned that The Flash captured the robber known as Plunder, so when that villain emerges, Barry gets Wally to catch him instead. Kid Flash gets the credit, instead of The Flash.
Providing a bit of a distraction from all the morbid discussion of Iris’ impending demise, an Earth-19 bounty hunter named Gypsy (played by Jessica Camacho) arrives and tries to take H.R. back to his original Earth to face trial and execution. (It turns out that inter-dimensional travel is illegal on Earth-19.)
Gypsy has similar powers to Cisco, and the two strike up something of a rapport. They also end up in a fight to the death, when Cisco demands a trial by combat on H.R.’s behalf. Cisco ends up winning, but he stops short of killing Gypsy. H.R. is allowed to live, but he can never return to his original Earth. Gypsy heads home.
Barry comes up with the idea of training up Wally to defeat Savitar. In the future, it was obvious that Barry wasn’t fast enough to stop the stabbing. Perhaps Wally could be. They do a lot of training, and they also work together to defeat a Metahuman that can decompose people with just a touch.
Jesse comes to town again, and explains that her dad has been kidnapped and taken to Earth-2’s Gorilla City. Barry – having heard about a gorilla attack on Central City in his vision of the future – sees another opportunity to alter the news reports. Team Flash heads to Gorilla City, and promptly get captured by Grodd (who they dumped there in a previous season).
Grodd wants Barry’s help to usurp gorilla overlord known as Solovar. There is a big CGI fight in an arena, which Barry wins. However, Grodd doesn’t keep up his end of the bargain. Instead, he keeps Team Flash hostage and plans an attack on Earth-1.
Barry fakes his own death in order to be removed from the cage. This barmy plan succeeds, and the gang escapes back to Earth-1. They believe, because Cisco is now out of his reach, that Grodd cannot open a portal to Earth-1. However, Grodd is revealed to have a brainwashed Gypsy on his side, and the gorilla invasion of Earth-1 Central City takes place the following week.
Grodd tries to mind-control an army general into bombing the city, but Barry stop this plan. And then, in order to stop the gorilla invasion, Barry brings Solovar to Earth-1 and allows him to defeat Grodd. This plan works, and ARGUS takes Grodd away.
In romantic news: Jesse decides to stay on Earth-1 so she can be with Wally; Julian asks Caitlin on a date; and Barry proposes to Iris, which she accepts.
In episode 15 of the season, a couple of secrets are revealed: Wally explains to Team Flash that he has been having visions of Savitar; also, Caitlin admits that she kept a piece of the Philosopher’s Stone for herself, because she thought it might help remove her powers; and the gang works out that Savitar, who speaks through Julian again in this episode, is trapped in the Speed Force.
Sadly, Wally isn’t present for that third revelation, and he doesn’t work out – like the rest of the gang – that throwing the final fragment of the Philosopher’s Stone into the Speed Force is exactly what Savitar wants him to do. With the full stone, Savitar would be able to escape.
Wally believes that the opposite is true, so he steals Caitlin’s piece of the stone and throws it into the Speed Force, hoping to end Savitar and the visions he’s been suffering. This backfires in spectacular fashion, as Savitar emerges from the Speed Force immediately and forces Wally to take his place in the grim Speed Force prison.
Barry and Savitar have a brief scuffle. Savitar taunts Barry about Iris’ upcoming death. Barry chops off of one of Savitar’s metal arm blade thingies.
Barry heads into the Speed Force in the next episode, opening the door to manifold cameos. Robbie Amell’s Ronnie Raymond, Wentworth Miller’s Captain Cold, Teddy Sears’ Hunter Zoloman and Rick Cosnett’s Eddy Thawne all show up, as Barry works his way through the manifold mysteries of the Speed Force in order to save Wally. These fallen friends and foes explain that Barry must be the one to face Savitar – it can’t be Wally that confronts him.
Ultimately, John Wesley Shipp’s Jay Garrick volunteers to take Wally’s place in the Speed Force prison. This entrapment entails reliving the worst moments from life: Wally, for example, had to endure the death of his mother countless times. (The exact nature of the Speed Force prison hasn’t been explained, but apparently it needs a speedster occupant. It’s been suggested that the prison was originally built for Savitar, by a future version of Team Flash.)
Barry admits to Iris that he proposed to her for a bad reason: because he wanted to change the future. In the future Barry glimpsed, Iris wasn’t wearing a wedding ring. The pair decides to spend some time apart following this revelation. This sends Barry into a pretty dark place…
The seventeenth episode of the season is Duet, a crossover with Supergirl, which sees Barry and Melissa Benoist’s Kara Zor-El working through their separate romantic issues through the power of musical theatre. The episode begins with David Harewood’s Martian Manhunter and Chris Wood’s Mon-El arriving at STAR Labs with a comatose Kara, who was attacked by the Music Meister (played by Darren Criss) at the end of Supergirl season 2 episode 16.
Barry and Kara sing their way through a story of love and woe, in a hallucinated dreamscape created by the Music Meister. John Barrowman’s Malcolm Merlyn, Victor Garber’s Martin Stein and Jeremy Jordan’s Winn Schott all make cameos, because they’re very good at singing.
In the imaginary musical, Barry and Kara encourage Iris and Mon-El to reveal their true feelings and make their secret love known. At the end of the episode, Barry and Kara return to the normal world knowing that they need to fix their broken relationships and embrace the loving feelings they have for Iris and Mon-El, respectively. Barry proposes to Iris again, and she accepts again.
With his love life sorted out, Barry continues his superhero work. He comes up against David Dastmalchian’s Abra Kadabra, a crook from the far-flung future who uses snazzy technology that modern eyes cannot distinguish from magic. Kadabra offers to reveal Savitar’s identity to Team Flash in exchange for his freedom. Gypsy, who has also being pursuing Kadabra, rejects this idea.
But Joe is desperate to save Iris from her fast-approaching death, so he sets Kadabra free. The villain doesn’t keep his end of the bargain, though, and he soon tries to build a time machine and escape back to the future. The gang succeeds in stopping him, but Caitlin is wounded in the process.
Caitlin refuses to let her Killer Frost persona free, even though that could save her life. Keeping with Caitlin’s wishes, Julian attempts to perform life-saving surgery on her. Julian fails, so he removes Caitlin’s power-suppressing necklace and allows Killer Frost to emerge. Her injuries heal rapidly, but Killer Frost gets violent and makes good her escape.
Inspired by the fact that the future-dwelling villain Kadabra knew (or claimed to know) Savitar’s identity, Barry decided to travel forward in time to a point where all of this Savitar nonsense had blown over. He heads to 2024, hoping to gain some answers and advice from the future iteration of Team Flash.
However, in 2024, Barry is met with a number of horrible sights: Wally is catatonic, having had his spine shattered by Savitar; Cisco is powerless, having had his hands frozen off by Killer Frost; Iris is dead, and Joe is depressed; Team Flash is no more, and Barry has grown out his fringe in misery.
Present-Barry brings together future-Julian (who works at Iron Heights prison, keeping an eye on Killer Frost), future-Joe and future-H.R., and this reunited version of Team Flash works together to stop future-Mirror-Master and future-Top’s reign of criminal terror. Future-Barry shows up at a vital moment, using a device from future-Cisco to save the day.
Despite present-Barry’s efforts to make this future a bit less grim, future-Barry refuses to reveal Savitar’s true identity to his younger self. However, future-Barry does tell present-Barry to seek out Tracy Brand (played by Anne Dudek). Tracy is a scientist that helped future-Barry create the Speed Force trap, which enabled his version of Team Flash to trap Savitar in the Speed Force after the murder of Iris.
Meanwhile, in the present, Killer Frost meets Savitar. Savitar reveals his identity to her (but not to the audience just yet), which immediately earns her trust.
Barry returns to the present, hoping that working with Tracy Brand earlier on in the timeline will allow him to trap Savitar quicker. In the original timeline, the Speed Force trap was created too late to save Iris, but maybe he can hurry Tracy along and encourage her to concoct the trap a whole lot earlier. Work begins on the Speed Force trap, and romantic feelings blossom between H.R. and Tracy.
Soon enough, Killer Frost kidnaps Joe’s girlfriend Cecile (played by Danielle Nicolet), and tries to trade her for Tracy. Killer Frost’s evil plan fails, and she loses a fight to Cisco. Cecile is saved, and Joe reveals Barry and Wally’s superhero secrets to her. Savitar rescues Killer Frost.
Barry has a eureka moment, and confronts Savitar. Barry has worked out that there’s only one person who could know everything that Team Flash is going to do before they even do it: a future version of himself. His assumptions are right, and Savitar reveals his true identity, even going so far as to quote his line from earlier on in the season (now without the comma): “I am the future Flash.”
Particularly skilled speedsters can create Time Remnants of themselves. The science of this has never been properly explained, but it essentially involves running so fast that there are two versions of the same speedster in the same place at the same time: the original version, and a Time Remnant duplicate. Barry used this skill to defeat Zoom in the season 2 finale, with the Time Remnant of Barry sacrificing his life to stop the season 2’s big bad.
At some point between the present day and the future we glimpsed in 2024, Barry would try this same tactic against Savitar: he created numerous Time Remnant copies of himself, and Savitar killed all of them but one. This sole remaining Time Remnant would live on, and get shunned by Team Flash for not being the original Barry.
This rejection would motivate the Time Remnant to travel back in time, name himself Savitar, spread the myth that he’s the first speedster, and ultimately terrorise Barry by killing Iris. Barry’s grief would motivate him to create the Time Remnants, allowing Savitar to be born, and the cycle continues on and on like that forever.
Savitar explains all of this in episode 21, as well as making it clear that he has all of Barry’s memories up until the moment of his creation as a Time Remnant. That’s why he always anticipates Barry’s tactics – because they’re already in his head as memories.
To try and tackle this, Cisco tampers with Barry’s brain, trying to stop him from creating new memories. This backfires, and Barry can’t remember anything. Cisco ultimately undoes the process, and Savitar carries on knowing everything that Barry knows.
Tracy completes the design for the Speed Force trap, and the plan to trap Savitar in the Speed Force before he can kill Iris remains in tact. There’s just one hitch, though: the trap requires a power source greater than the sun. The only such power source on Earth is a piece of Dominator tech that ARGUS has locked up with King Shark.
Lyla (Arrow’s ARGUS chief, played by Audrey Marie Anderson) isn’t going to let Team Flash have the power source. So Barry travels back in time, picks up Captain Cold from the heroic age of his life (Legends Of Tomorrow season 1), and plans an elaborate heist. In a surprisingly jovial penultimate episode of the season, Barry and Captain Cold sneak into the ARGUS base (using a piece of face-disguising tech from H.R.’s Earth), scuffle with King Shark, and fail to steal the device. Lyla ends up letting them have it. The Speed Force trap is now named the Speed Force bazooka, and it is fully operational.
However, the Speed Force bazooka turns out to be completely useless. Savitar renders it so within seconds, using the ‘calcified Speed Force energy’ of the Philosopher’s Stone to deflect its blasts with ease. Joe’s backup plan of hiding Iris on Earth-2 also backfires, with Savitar easily unfolding the ruse by pretending to be normal-Barry for all of five seconds. Wally’s chances of intervening are nullified when Savitar breaks one of his legs. And Cisco is busy fighting Killer Frost, negating a sudden sci-fi solution being found.
It appears to be game over, then, as the penultimate episode of the season draws to a close with Iris being stabbed to death. Barry holds her corpse in his arms, and Iris’ final message plays out in tear-jerking style for the audience’s benefit.
Gotcha! Iris is fine! Using that aforementioned face-disguising piece of technology from H.R.’s Earth, Iris was swapped out for the showdown with Savitar. Iris was safe on a rooftop disguised as H.R., while H.R. died on the ground disguised as Iris.
Everyone – including his newfound love interest Tracy – was sad to see H.R. go: he was more of an ideas man than a hero for most of his time on The Flash, but here H.R. made the sacrifice play, and he saved the day when Barry couldn’t.
Barry had no knowledge of H.R.’s secret plan, so Savitar too was oblivious. And now that Iris hasn’t died, Barry won’t be driven to create Time Remnants of himself. Therefore, Savitar will never be born. However, it takes time for changes to the timeline to fully take effect (just ask Eobard Thawne), so Savitar continues to exist – for the time being.
Savitar kidnaps Cisco, and tasks the science whiz with modifying the Speed Force bazooka into a quantum splicer: this device would disperse Savitar across all of time, saving him from being erased, and essentially making him a god.
Barry tries to reach out to Savitar, taking his evil Time Remnant clone to STAR Labs and promising to help him avoid nonexistence. Savitar, as you’d expect, is having none of it: he destroys the lab and orders Killer Frost to kill Cisco. Gypsy intervenes and saves him.
Savitar tries to open a portal into the Speed Force, but Black Flash – essentially the Grim Reaper for speedsters – emerges, intent on erasing Savitar. Killer Frost freezes Black Flash.
Savitar then attempts to complete his original survival plan, using the modified Speed Force bazooka. But Cisco ignored Savitar’s instructions and made his own alterations, turning the bazooka into a skeleton key instead of a quantum splicer. Freed by Cisco’s Speed Force skeleton key, Jay Garrick appears! Along with Barry and Wally (his leg is now fine), Jay helps to battle Savitar.
Meanwhile, Cisco and Gypsy engage Killer Frost, and Cisco has a chance to kill her. He doesn’t take it, and instead Cisco offers Killer Frost a cure to her condition, which Julian has developed. Killer Frost doesn’t use the cure, but she does turn on Savitar, walloping him with an ice beam at a crucial moment.
Barry phases into Savitar’s suit and destroys it. He refuses to give into the pain and kill Savitar. Instead, he knocks Savitar out and leaves him on the ground. Savitar gets up moments later, but Iris puts a bullet in his back. Savitar slumps over, dies, and flickers out of existence. Game over.
However, removing Jay from the Speed Force prison to help with the battle against Savitar has to have consequences. It was established earlier in the season that the Speed Force prison must have a speedster occupant at all times, and, at the close of season 3, a Speed Force lightning storm rages across Central City. Barry surmises that it could destroy the city, “or even the world”, if nobody went in there to stabilise it.
Barry volunteered himself, and the Speed Force took the form of his mother to beckon him in. Barry called this imprisonment his penance and his redemption, following his Flashpoint mistakes.
Barry said his emotional goodbyes to everyone, and he stepped into the Speed Force… THE END.
The Flash season 4 airs on The CW in the US starting Tuesday the 10th of October and shortly thereafter on Sky One here in the UK.