On the Season 3 finale of fairytale drama "Once Upon a Time," two heroes go back in time, a couple gets married and an icy chill heads for Storybrooke.

The final two episodes of the season, "Snow Drifts" and "There's No Place Like Home," start with the heroes gathering at Granny's to welcome Mary Margaret (Ginnifer Goodwin) and David's (Josh Dallas) new baby.

But while Emma (Jennifer Morrison) is talking with Hook (Colin O'Donoghue), she gets sucked into Zelena's (Rebecca Mader) time portal. Hook dives in after her in an attempt to save her.

The pair both land in Fairytale Land, wearing classic fairytale clothes to boot.

Emma is watching her parents almost meet when Snow gets distracted, and doesn't stop Charming and Abigail's carriage. If the two fail to meet, it will alter time and prevent Emma's existence.

Emma and Hook then go to visit Rumple (Robert Carlyle), and decide to sneak into Midas' ball so Snow can steal the ring.

After Hook punches his alternate self at the ball, Rumple crashes it, with Emma humorously claiming to be "Princess Leia." While Charming and Abigail fight, Snow steals the ring, but loses it when Charming sees her.

Emma tries to reach Snow, but gets caught by Regina (Lana Parrilla).

After there's a flashback to Emma and Neal, she's able to open the lock, and she and another woman escape.

Hook and Charming get into Regina's castle, and Snow tries to apologize. Regina doesn't accept it, and burns Snow at the stake. Luckily, Snow has dark fairy dust, which allows her to survive.

Emma and Hook watch as Snow and Charming finally meet, and they see that Snow and Charming's wedding is once again in the fairytale storybook.

In the end, Rumple won't help Emma and Hook open the time portal, and sends them to his magic vault.

Emma then sees that her wand has lit up, meaning she has magic again because she's accepted Storybrooke. A portal opens, and Hook goes through it with the mystery woman who escaped Regina's castle.

Rumple then learns the truth about Neal's death, and Emma pleads with Rumple to not let his death be in vain. Emma then steps through the portal to rejoin Hook in Storybrooke.

Once back, Emma reunites with her family, and Hook reveals to her that he sold his ship for a magic bean, which helped save her. Emma is pleasantly surprised, and the two kiss.

Rumple and Belle (Emilie de Ravin) also get married.

Regina then sees that the woman who escaped through the portal with Hook and Emma is Marian, a love interest from Robin Hood's (Sean Maguire) past. Regina is not happy with Emma for bringing her back.

Then, an urn from the vault opens, spilling blue liquid onto Zelena's rune.

The Snow Queen emerges in the last scene, hinting that "Once Upon a Time" may get a little "Frozen" in Season 4.

What did you think of the Season 3 finale? Are you excited for Elsa, the Snow Queen, to come to Storybrooke? Let us know in the comments.