In the midst of a bloody battle with the menacing troll, Beowulf, the handsome and mighty warrior begs the witch to take him to a far land in order to spare his life. She warns him that this land will be something he will never understand. She grants him his wish, where he finds himself at a female university dorm in twenty-first century London. He knocks on Kyla's door, where she is flabbergasted at the handsome warrior dressed in leather hides. Kyla, at first, is reluctant to believe this man is an ancient Viking warrior. She takes him in and teaches him the ways of the twenty-first century.
Kyla keeps Beowulf a secret to the outside world, by giving him an alias name. Beowulf, enchanted by Kyla's kindness, falls in love with her. Her best friend, Beth, is enthralled with this mysterious beau but is unaware he is a fourteen hundred year old Viking warrior. Kyla tries to fight her feelings for the ancient Viking, but his love for her is too strong to resist.
This blend of romance and humor unfolds until they are faced with the arrival of Grendel, the troll. The witches' love for Grendel is a curse to the mighty warrior, where she plays the rules of sorcery by the book. Kyla can't fit into Beowulf's mystical world because she is an outsider. The witch knows and understands Beowulf's destiny and isn't pleased when she discovers Beowulf's unstoppable love for Kyla.
Grendel terrorizes the streets of London, where Beowulf feels responsible. He asks the witch to rid modern London of Grendel, but the only way to do so is to send Beowulf with the troll back to sixth century Daneland. This is not what either of the lovers wanted. They are both pained by the separation.
Kyla is then given the chance to join Beowulf in his time; she is reluctant about living in the sixth century. She becomes anxious to see her love and assures the witch that her love for the warrior is genuine. The witch then agrees on condition Kyla fulfills the four Norse Rules. Kyla manages to accomplish three out of the four. The witch grants the wish, due to Beowulf's request.
When Kyla arrives in sixth century Daneland, she struggles to survive the unruly conditions under King Hrothgar and his mead hall. However, she is reunited with her warrior, who tries to shield her from sixth century hardships.
Kyla learns the people of Daneland have had dealings with the unruly troll mother, who later imprisons Beowulf. Luckily, Beowulf breaks loose from the tortures of the troll mother and he decides to let her live.
The king orders Beowulf to slay Grendel, once and for all. Through several attempts, Beowulf finally kills the troll and the king honors him for his bravery. A celebration takes place where King Hrothgar indicates Beowulf will be the next king with Kyla as his queen. Kyla fears Beowulf will want to remain in his sixth century so he can be king of the Danes.
Just when Kyla expects that she and her warrior will be returning to twenty-first century London, she is then faced with her warrior's final battle with the dragon. This is Beowulf's biggest challenge, because the witch knows his destiny. She knows the battle with the two-headed dragon is when Beowulf will die. Kyla is terrified that she will lose her love as she watches the dragon almost devour her warrior. Kyla calls for the witch's help. The only way Beowulf can survive the dragon's mortal wound is to be sent to the twenty-first century to have modern medicine save his life. He will no longer be part of the magical-mystical world and he will no longer have the strength of thirty men. The witch makes it clear that she will never step foot in Beowulf's life again because he is now an ordinary man. However, with his own mortal strength, he thrusts his sword into the dragon and it falls to its death.