In the Kingdom of Cloister, Jack, a young farm boy, is fascinated by the legend of Erik, an ancient king who defeated an army of invading giants from a realm in the sky by controlling them with a magical crown. At the same time, Princess Isabelle becomes fascinated with the same legend.
Ten years later, Jack goes into town to sell his horse to support his uncle's farm. There, Jack spots Isabelle and develops a crush on her, after defending her honor from a group of thugs. Meanwhile, Lord Roderick returns to his study, only to find that a monk has robbed him. The monk offers Jack some magic beans he stole from Roderick as collateral for Jack's horse. Back at the castle, Isabelle quarrels with her father, King Brahmwell, as she wants to explore the kingdom, but he wants her to stay and marry Roderick. Likewise, Jack's uncle scolds him for being foolish before throwing the beans on the floor and leaving the house.
Determined to be free, Isabelle sneaks out of the castle and seeks shelter from the rain in Jack's house. As it rains, one of the beans takes root and grows into a massive beanstalk that carries the house and Isabelle into the sky as Jack falls to the ground.
Jack, Roderick, and Roderick's attendant, Wicke, volunteer to join the king's knights, led by Elmont and his second in-command, Crawe, and climb the beanstalk in search of Isabelle. As they climb, Roderick and Wicke cut the safety rope, intentionally killing some of the knights. At the top, they discover the giants' realm and decide to split into two groups; one with Jack, Elmont, and Crawe, and the other including Roderick and Wicke, but not before Roderick forcibly takes the remaining beans from Jack (although Jack manages to save one for himself).
Jack's group is trapped by a giant, who takes everyone prisoner except Jack. Meanwhile, Roderick's group encounters two other giants; one eats Wicke, but before they can do the same to Roderick, Roderick dons the magic crown.
Jack follows the giant to their stronghold, where the two-headed giant leader, Fallon, has killed Crawe. There, Jack finds the imprisoned Isabelle and Elmont. As the giants prepare to kill their remaining prisoners, Roderick walks in and enslaves the giants with the crown. He tells the giants they will attack Cloister at dawn and allows them to eat Isabelle and Elmont. Jack rescues Isabelle and Elmont as one of the giants prepares to cook Elmont as a pig-in-a-blanket. The trio makes for the beanstalk, where Jack causes the giant guarding the beanstalk to fall off the realm's edge. Seeing the giant's body, Brahmwell orders the beanstalk cut down to avoid an invasion by the giants.
Jack and Isabelle head down the beanstalk, while Elmont stays to confront Roderick. Elmont kills Roderick, but Fallon takes the crown before Elmont can claim it, and Elmont is forced to escape down the beanstalk. Jack, Isabelle, and Elmont all survive the fall after the beanstalk is cut down. As everyone returns home, Jack warns that the giants are using Roderick's beans to create beanstalks to descend down to Earth and attack Cloister.
The giants chase Jack, Isabelle, and Brahmwell into the castle, where Elmont fills the moat with oil and sets it on fire. Fallon falls in the moat and breaks into the castle from below. As the siege continues, Fallon captures Jack and Isabelle, but Jack throws the final bean down Fallon's throat, causing a beanstalk to rip apart his body. Jack takes the crown and sends the giants back to their realm.
Jack and Isabelle marry and tell the story of the giants to their children. As time passes, the magic crown is crafted into St Edward's Crown and is secured in the Tower of London.