SPOILER ALERT: This story includes major details about the Arrow, Supergirl, The Flash and DC’s Legends of Tomorrow crossover event.

The CW’s epic four-way superhero franchise crossover event culminated tonight on DC’s Legends of Tomorrow. The four-part series, titled “Crisis On Earth-X,” began with Supergirl before shooting into  Arrow, bolting into The Flash and then had its big finish on Legends. Amidst weddings, alternate Earths, evil doppelgangers, and an all-out superhero v. Earth X Nazis battle royale, it ended with one particular event that made fans shed a tear or two.

Of course, we are talking about the death of Victor Garber’s Martin Stein, aka one-half of Firestorm. Some might not be too shocked; Deadline broke the story of Garber’s departure from Legends in October. However, Stein’s death is sad nonetheless — though he went out in a blaze of glory, sacrificing his life for the greater good (I won’t spoil it all for you). What stung the most is seeing his other Firestorm half, Jefferson Jackson (Franz Drameh), hold his hand while he took his last breath.

The CW

Although Stein met his end, he will remain a series regular on the current third season of Legends. There are no plans for now for him to return for further episodes, but as we have seen in various films and TV series, deaths in comic book series don’t necessarily mean the end — especially for a time-traveling character like Stein. (In the meantime, if you want to see Garber, he’ll be heading back to Broadway, teaming with Bernadette Peters to headline the Tony-winning revival of Hello, Dolly!, taking over from David Hyde Pierce and Bette Midler starting January 20.)

Despite Stein’s tragic death, the crossover was essentially a woven tapestry of CW superheroes that played out like a four-hour movie as each show spilled into the other, not missing a beat. The crossover started with the wedding — Barry (Grant Gustin) and Iris (Candice Patton) — which, of course, brought all the heroes together. But as things go in the CW-verse, everything doesn’t go as planned. The villains of Earth-X attack the wedding and things go awry, forcing all the heroes to jump into action to fight their doppelgangers and Nazis on the alternate planet. As the story unfolds, we see our titular heroes Green Arrow (Stephen Amell), Supergirl (Melissa Benoist), The Flash (Gustin) as well as White Canary (Caity Lotz) and the Legends team get into some serious debacles — some more life threatening than others (especially Supergirl’s).

But like all crossover events, it’s about the action – and the episodes delivered (specifically the all-out brawl in Legends). Appearances from old favorites including Citizen Cold (Wentworth Miller), The Ray (Russell Tovey), Felicity (Emily Bett Rickards) and Alex Danvers (Chyler Leigh) are always a treat, but what is more special is the story that unfolds amidst the action including relationships that we didn’t know existed, exciting reunions, deaths (besides Stein’s), and some other surprises that I won’t spoil for you.

After last year’s  CW superhero team up, “Invasion!”,  the crossovers are becoming more and more anticipated as the network piles on the action, stakes, villains, drama and, of course, the superheroes. Let’s hope next year’s ups the ante too.