In 740 AD, one of Merlin's (James A. Stephens) apprentices, Maxim Horvath (Alfred Molina), joins forces with the evil sorceress Morgana le Fay (Alice Krige), betraying Merlin. Morgana mortally wounds Merlin before his other apprentices, Balthazar Blake (Nicolas Cage) and Veronica (Monica Bellucci), can stop her. While Balthazar battles Horvath, Morgana prepares to kill Balthazar, but is stopped by Veronica, who absorbs Morgana’s soul into her own body. As Morgana tries to kill Veronica from within, Balthazar stops her by imprisoning Morgana and Veronica in the Grimhold, a prison similar to a nesting doll.
Before dying, Merlin gives his remaining apprentice a dragon ring that will choose the Prime Merlinian, who will become Merlin's successor. Only the Prime Merlinian will be able to defeat Morgana. Throughout history Balthazar imprisons Morganians, sorcerers who try to release Morgana, including Horvath, into successive layers on the Grimhold while he searches for the successor.
In 2000 AD in Manhattan, 10-year-old Dave Stutler (Jake Cherry) encounters Balthazar in an antique store, who is as youthful as when Merlin gave him the ring. Hoping he is the successor, Balthazar gives him the dragon ring, which comes alive and locks onto Dave's finger. Dave accidently opens the Grimhold, releasing Horvath. While battling for possession of the Grimhold, Balthazar and Horvath are imprisoned in a vase with a ten-year lock. Dave is humiliated when he is discovered by his teacher and classmates with his pants wet due to a vase that broke in his lap. There is no trace of the battle, so everyone believes Dave made it up.
Ten years later to the day, Dave (Jay Baruchel) is a physics student at New York University and has made the acquaintance of a childhood friend, Becky (Teresa Palmer). The mystical urn opens, and Horvath escapes first; he throws the urn out the window of an apartment building, but Balthazar escapes the urn just before it hits the ground and shatters. Horvath finds Dave, who is the last person he remembers possessing the Grimhold. Dave threw the Grimhold away after the battle, so he has no idea where it is. When Dave cannot tell him, Horvath unleashes a pack of wolves. Balthazar rescues Dave, and they escape atop a steel eagle.
Dave initially refuses to help Balthazar, wanting only a normal life, but agrees to help as long as Balthazar will leave Dave alone once the Grimhold is found. They track the Grimhold to Chinatown, where Horvath has released the next Morganian, a wizard named Sun Lok (Gregory Woo). Dave defeats Sun Lok, and Balthazar retrieves the Grimhold. Dave finds that he wants to learn to use magic after all, and agrees to become Balthazar's apprentice. He becomes romantically involved with Becky against Balthazar's wishes.
Horvath enlists Drake Stone (Toby Kebbell), a young Morganian-turned-celebrity magician to help him retrieve the Grimhold and defeat Balthazar and Dave, whom Horvath realizes is the Prime Merlinian. They attempt to kill Dave, but Balthazar saves him. Cued by Horvath, Dave demands to know the truth about Balthazar’s quest. Balthazar reveals that Morgana is trapped in the Grimhold, as well as Veronica; if Morgana escapes she will attempt "The Rising", a forbidden spell that will raise long-dead Morganian sorcerers from the dead, and use them to enslave mankind. Dave, as the Prime Merlinian, and heir (albeit distant) to Merlin and his powers, is the only one who can defeat Morgana.
Horvath and Drake steal the Grimhold; once that is done, Horvath uses a spell to steal Drake's energy, killing him, and takes his ring. He releases the witch, Abigail Williams (Nicole Ehinger), from the last layer around the Grimhold and uses her to kidnap Becky. Once Abigail completes that, Horvath steals Abigail's energy and her pendant as well. Horvath threatens to kill Becky, forcing Dave to surrender the Grimhold and his ring. Balthazar goes to defeat Horvath and Morgana, knowing that without the ring Dave will be killed.
Horvath releases Morgana, who still possesses Veronica's body, from the Grimhold. Morgana begins the spell. Horvath animates the Charging Bull sculpture at the north end of Bowling Green park, which attacks Balthazar.
With Becky's help, Dave reaches them in time to defeat Horvath and stop Morgana from completing the Rising. Balthazar takes Morgana's soul from Veronica's body into his own. Morgana’s spirit escapes Balthazar's body, and begins to shoot energy bolts at Veronica, which causes Balthazar to take the damage, killing him. Her ethereal projection is about to incinerate them until Dave stops her, using magic without the ring, proving he is the Prime Merlinian. He battles Morgana, and using the same experiment that he had shown to Becky earlier, he defeats her. Dave then saves Balthazar by jump-starting his heart. Balthazar reunites with Veronica, gifting her with a necklace he bought for her before she sacrificed herself. Dave and Becky fly to France on Balthazar's eagle.
Before dying, Merlin gives his remaining apprentice a dragon ring that will choose the Prime Merlinian, who will become Merlin's successor. Only the Prime Merlinian will be able to defeat Morgana. Throughout history Balthazar imprisons Morganians, sorcerers who try to release Morgana, including Horvath, into successive layers on the Grimhold while he searches for the successor.
In 2000 AD in Manhattan, 10-year-old Dave Stutler (Jake Cherry) encounters Balthazar in an antique store, who is as youthful as when Merlin gave him the ring. Hoping he is the successor, Balthazar gives him the dragon ring, which comes alive and locks onto Dave's finger. Dave accidently opens the Grimhold, releasing Horvath. While battling for possession of the Grimhold, Balthazar and Horvath are imprisoned in a vase with a ten-year lock. Dave is humiliated when he is discovered by his teacher and classmates with his pants wet due to a vase that broke in his lap. There is no trace of the battle, so everyone believes Dave made it up.
Ten years later to the day, Dave (Jay Baruchel) is a physics student at New York University and has made the acquaintance of a childhood friend, Becky (Teresa Palmer). The mystical urn opens, and Horvath escapes first; he throws the urn out the window of an apartment building, but Balthazar escapes the urn just before it hits the ground and shatters. Horvath finds Dave, who is the last person he remembers possessing the Grimhold. Dave threw the Grimhold away after the battle, so he has no idea where it is. When Dave cannot tell him, Horvath unleashes a pack of wolves. Balthazar rescues Dave, and they escape atop a steel eagle.
Dave initially refuses to help Balthazar, wanting only a normal life, but agrees to help as long as Balthazar will leave Dave alone once the Grimhold is found. They track the Grimhold to Chinatown, where Horvath has released the next Morganian, a wizard named Sun Lok (Gregory Woo). Dave defeats Sun Lok, and Balthazar retrieves the Grimhold. Dave finds that he wants to learn to use magic after all, and agrees to become Balthazar's apprentice. He becomes romantically involved with Becky against Balthazar's wishes.
Horvath enlists Drake Stone (Toby Kebbell), a young Morganian-turned-celebrity magician to help him retrieve the Grimhold and defeat Balthazar and Dave, whom Horvath realizes is the Prime Merlinian. They attempt to kill Dave, but Balthazar saves him. Cued by Horvath, Dave demands to know the truth about Balthazar’s quest. Balthazar reveals that Morgana is trapped in the Grimhold, as well as Veronica; if Morgana escapes she will attempt "The Rising", a forbidden spell that will raise long-dead Morganian sorcerers from the dead, and use them to enslave mankind. Dave, as the Prime Merlinian, and heir (albeit distant) to Merlin and his powers, is the only one who can defeat Morgana.
Horvath and Drake steal the Grimhold; once that is done, Horvath uses a spell to steal Drake's energy, killing him, and takes his ring. He releases the witch, Abigail Williams (Nicole Ehinger), from the last layer around the Grimhold and uses her to kidnap Becky. Once Abigail completes that, Horvath steals Abigail's energy and her pendant as well. Horvath threatens to kill Becky, forcing Dave to surrender the Grimhold and his ring. Balthazar goes to defeat Horvath and Morgana, knowing that without the ring Dave will be killed.
Horvath releases Morgana, who still possesses Veronica's body, from the Grimhold. Morgana begins the spell. Horvath animates the Charging Bull sculpture at the north end of Bowling Green park, which attacks Balthazar.
With Becky's help, Dave reaches them in time to defeat Horvath and stop Morgana from completing the Rising. Balthazar takes Morgana's soul from Veronica's body into his own. Morgana’s spirit escapes Balthazar's body, and begins to shoot energy bolts at Veronica, which causes Balthazar to take the damage, killing him. Her ethereal projection is about to incinerate them until Dave stops her, using magic without the ring, proving he is the Prime Merlinian. He battles Morgana, and using the same experiment that he had shown to Becky earlier, he defeats her. Dave then saves Balthazar by jump-starting his heart. Balthazar reunites with Veronica, gifting her with a necklace he bought for her before she sacrificed herself. Dave and Becky fly to France on Balthazar's eagle.