Since the day Oliver returned from the island in the first season of "Arrow" he has had one goal: to save his city. If the last four seasons have taught him anything it's that ruthless men and women will stop at nothing to bring Star City down, and that Oliver and his team are the only people who can stand in their way from doing so. In season one it was Malcolm Merlyn, in season two it was Slade Wilson, in season three it was Ra's al Ghul, this season it was Damien Darhk. While each of their motivations were different their agendas were the same: destroy Star City any cost. In each season finale Oliver has had to battle these megalomaniacs and so far he was won every time, but never without great personal cost and sacrifice. While the main villain each season has been a formidable adversary for Oliver and Team Arrow to face, the true villain he has been fighting is himself. For years Oliver has waged against his own inner darkness. Death and torture and killing have been huge themes on "Arrow" all four seasons, and while it seemed like the light side of Oliver was winning out this season he still could not move past all of his darkness. What this episode so powerfully achieved is that Oliver finally came to terms with having both a dark and a light side, and that the true battle wasn't won by banishing the darkness, but in knowing when to use it. Felicity described Oliver's "Schism" -- which was the title of this episode -- so perfectly when she addressed his inner conflict. While I don't think Oliver will ever be done fighting that internal war, I'm glad that he finally got to a place where he could accept himself as both a hero in the darkness and in the light.

Tonight's episode kicked off with Damien Darhk (Neal McDonough) breaking into Felicity's (Emily Bett Rickards) home and threatening the life of her mother (Charlotte Ross) in exchange for the Rubicon codes. Oliver (Stephen Amell,) came in to rescue them, but was captured by Darhk whose magic almost drained the life out him. It wasn't until Thea (Willa Holland) showed up with Darhk's daughter that he let Oliver go. Darhk and his daughter fled the apartment, but not before grabbing Felicity's laptop and the Rubicon codes as well. Darhk gave the codes to Felicity's hacker ex-boyfriend Cooper Seldon (Nolan Funk) who simultaneously launched thousands of missiles at once. Felicity and the team then had just under two hours to stop the nukes and save the world -- no biggie, right?

Felicity and Curtis (Echo Kellum), being the geniuses that they were, found a way to hack the signal of the missile heading towards Star City and were able to redirect it off course. While this was good news for Star City it was bad news for every other city that still had a nuke heading towards it. While Felicity and Curtis were playing dynamic duo, Oliver attempted to quell the madness going on in Star City's downtown area. At one point he even climbed onto a stalled vehicle and gave an impassioned speech about being persistent, vigilant, and tenacious in the face of adversity. The people rallied around him and cheered when the missile above them was disarmed. Oliver's speech called out Darhk, who was prepared to die in the face of an oncoming nuclear war. At first Darhk's magic worked on Oliver, but then as the hope of the people began to rise, Oliver's eyes began to glow and he was able to repel Darhk's magic.

As Darhk and Oliver fought hand-to-hand combat, Thea, Diggle (David Ramsey), Lyla (Audrey Marie Anderson), even Captain Lance (Paul Blackthorne) all showed up to support Oliver. Then Darhk brought in his ghosts and the streets turned into chaos. While Darhk was fighting Oliver, Curtis and Felicity were able to find Cooper and to convince him to stop all the launch codes at once. At first he was resistant, for fear that Darhk would kill him, but Felicity was able to get through to him. Their scene was a nice pay off to the episode "The Secret Origin of Felicity Smoak" in season three, which introduced Nolan's character and Felicity's hacktivist past. With the end of the world cancelled, Darhk had nothing left to do but to fight Oliver to the death. Much like how Barry and Zoom's fight ended on "The Flash" last night, Darhk taunted Oliver saying he couldn't kill him before and that he wouldn't kill him now. Darhk even reminded Oliver that he didn't kill Slade Wilson even though Slade killed his mother. But Oliver killed Darhk anyway, in no small part because Darhk killed Laurel. Oliver even used an arrow the same way Darhk used an arrow on Laurel, and Oliver killed Darhk once and for all.

The episode concluded with all of Team Arrow deciding to go their separate ways. Lance and Donna decided to take some time off on the road. Thea decided to go find her true self outside of the Arrow lair and outside of Merlyn. Curtis went back to his husband and to work at Palmer Tech. Lyla went home to her daughter Sara, and Diggle decided to go find his boundaries again, potentially by reenlisting in the military. Oliver and Felicity were the only ones who decided to stay in the Arrow lair -- which is quite the opposite of what they did in last year's finale (driving off into the sunset.) Oliver also got an impassioned call by a member of the city who invited Oliver to become acting mayor of Star City until an election could be held. Watching Oliver be sworn in as mayor might be the most rewarding moment I have ever seen on "Arrow." As someone who has been with this show since the pilot and has seen Oliver lay down his life so many times for this city and lay to rest countless friends and family like Tommy, Moira, Sara, Laurel, it felt like watching a hero being publicly recognized for all of his years of service. Oliver also came to terms with both his light side and his dark side, and for once in his life he might have actually found the peace that he has been looking for since that fateful day he lost his father on the Queen's Gambit.

"Arrow" will return this fall to The CW, Wednesdays at 8 p.m.