The film begins with Harry Potter (Daniel Radcliffe
) and Hermione Granger (Emma Watson
) starting their search for Voldemort's Horcruxes. Meanwhile, Severus Snape arrives at Malfoy Manor to tell Voldemort (Ralph Fiennes
) and the rest of his council that he's been appointed the new Headmaster of Hogwarts. He also tells them that the Order of the Phoenix will be moving Harry Potter from Privet Drive to a more secure location. Voldemort uses Lucius Malfoy's (Jason Isaacs
) wand to avoid using twin wands in a dueling battle.
After Harry's 'family' The Dursleys flee their home, the Order of the Phoenix arrive to meet Harry along with six others: Ron Weasley (Rupert Grint
), Hermione, Fred (James Phelps
) and George Weasley (Oliver Phelps
), Fleur Delacour (Clémence Poésy
) and Mundungus Fletcher (Andy Linden
). They all take Polyjuice Potion to become Harry's doppelganger's.
Harry and the six copies leave Privet Drive accompanied by a protector whilst the real Harry flies alongside Hagrid (Robbie Coltrane
) on his flying motorbike. They are intercepted almost immediately by Death Eaters and the pairs scatter. Voldemort arrives but Harry manages to defeat his borrowed wand and the group arrive safely at the Burrow. All but Mad-Eye Moody (Brendan Gleeson
), who was killed by Voldemort and Mundungus, who disapparated when he saw Voldemort arrive. George has a bad head wound from a curse Snape conjured during the battle. Ron convinces Harry to remain at the Burrow until after Bill (Domhnall Gleeson
) and Fleur's wedding before going to find more horcruxes. Minister of Magic, Rufus Scrimgeour (Bill Nighy
), arrives at the Burrow and distributes the items from Dumbledore's last will and testament to Ron, Hermione and Harry. Ron receives the Deluminator, Harry gets the missing sword of Gryffindor and the first Snitch he ever caught and Hermione gets a personal copy of "The Tales of Beetle the Bard". During the wedding, Harry sees Xenophilius Lovegood (Rhys Ifans
) and notices a strange symbol on his necklace. Harry speaks to Elphius Doge (David Ryall
), one of Dumbledore's oldest friends and Ron's Aunt Muriel (Matyelok Gibbs
) and learns that Dumbledore used to live in Harry's hometown, Godric's Hollow. A Patronus message sent by Kingsley Shacklebolt (George Harris
) appears and warns that the Ministry has fallen, Scrimgeour is dead and that 'they are coming'. Death Eaters appear and trash the ceremony, leading Ron, Harry and Hermione to apparate to London.
Taking refuge in a cafe, they discuss their immediate plans but before they can leave two Death Eaters arrive and begin dueling. The trio win the battle and disapparate to Grimmauld Place where they discover that Regulus Arcturus Black (Sirius's younger brother) is the R.A.B in the false locket found at the end of Half-Blood Prince. Kreacher reveals that the real locket was in the house but Mundungus stole it when he looted Grimmauld Place. Harry sends Kreacher to get Mundungus who in turn explains that Dolores Umbridge (Imelda Staunton
) took it from him in return for not revoking his peddler's licence. The trio decide to break into the Ministry, now under the eyes of Death Eaters to retrieve the locket.
Harry, Ron and Hermione capture three Ministry workers and impersonate them to enter the secret Ministry offices but are quickly split up. Hermione ends up in a courtroom with Umbridge to witness a false trial, Ron is in Head of Magical Law Enforcement (Death Eater Yaxley's) office and Harry is free to wander the corridors since he unwittingly copied a Death Eater Runcorn. Harry eventually finds his way to Umbridge's office but doesn't find the locket so he makes his way to the courtroom alongside Ron. They reunite with Hermione and stun Umbridge to take the locket and attempt to leave the Ministry. However, their Polyjuice Potion begins to wear off and during the battle to Floo away, Yaxley catches them as they reach Grimmauld Place.
Since they cannot safely stay at Grimmauld Place now Yaxley is a secret-keeper, Hermione apparates them to a forest. Ron gets splinched in the process, meaning the group can't apparate until he has recovered. They attempt to destroy the locket but their magic proves useless on it so they take turns wearing it despite its negative effects on their morale. While wearing it, Harry sees a vision of Voldemort interrogating and killing Gregorovitch (Rade Serbedzija
) the wand-maker and going off in search of a mysterious wizard said to have robbed his shop many years ago.
As they apparate around the countryside to camp in secluded areas, Ron becomes increasingly suspicious that Harry and Hermione are becoming more than friends. While wearing the locket, Ron overhears Hermione discover that if they can find the sword of Gryffindor, they can destroy all of the Horcruxes. This realisation that they must find another thing in a location they don't know, coupled with his rising suspicion and resentment, drives Ron to leave the group and return home. Harry and Hermione are forced to teleport away, leaving Ron no way to return even if he wanted to. Hermione takes his exit badly so Harry dances to a radio with her to try and cheer her up but the romantic situation is too much for Hermione, making her revert back to sadness. Harry decides to visit Godric's Hollow, both because it would be the first time since Voldemort attacked him and because he wishes to meet Bethilda Bagshot (Hazel Douglas
), a magical historian who claimed to 'know the Dumbledores better than anyone'. They find the church graveyard and Hermione notices that a grave bearing the name 'Ignotus Peverell' has the same symbol on it as the one on Mr. Lovegood's necklace and in the book left for her by Dumbledore. Harry finds his parents' gravestones and an old woman approaches them as they pay their respects. Harry guesses that she is Bethilda and they follow her home. Harry sees a picture of the teenager from Gregorovitch's memory as Bethilda leads him to the attic of the house. Hermione wanders around downstairs. She finds signs of a bloody attack whilst the woman in front of Harry decomposes before his eyes into Voldemort's snake, Nagini. After a fight, Harry and Hermione escape with the only casualty being Harry's wand. Hermione says that the teen from the memory was Gellert Grindelwald.
In the forest where they spend the night, Harry sees a Patronus doe watching over them and follows it to a frozen pond. He discovers the sword of Gryffindor at the bottom and as he swims down to get it, the locket goes crazy and attempts to drown him. Ron appears and saves him with Harry convincing Ron to destroy the locket with the sword. Harry opens it using Parseltongue. As it opens, a ghostly black cloud erupts from it whilst it shows Ron horrific images including spiders. A ghostly Harry tells Ron that Mrs. Weasley wanted him as a son whilst a ghostly Hermione mocks him, asking him why she'd choose him over the Chosen One before they begin kissing. Ron angrily attacks the locket, destroying it with the sword before he returns to the tent with Harry. Hermione is furious at Ron for leaving and returning as if nothing happened but the trio decide to visit Mr. Lovegood to find out about the mysterious symbol.
At the Lovegood house, Mr. Lovegood teaches them about the Deathly Hallows - an invincible Elder Wand, a Resurrecting Stone and the invisibility cloak - and tells them the story of the three Peverell brothers who owned them all. When the group attempts to leave, Mr Lovegood reveals that Death Eaters have taken his daughter, Luna (Evanna Lynch
) and that he must keep them there before they give her back. They escape the ensuing attack but apparate to a previous camping ground where a group of Snatchers are waiting to capture them and take them to the Ministry. Hermione uses a Stinging Hex on Harry's face to disfigure it but the Snatchers see the scar under the swelling. Instead, they take the trio to Malfoy Manor to collect the reward for Harry's capture.
Since the Malfoys and Bellatrix Lestrange (Helena Bonham Carter
) can't be sure the disfigured wizard is Harry, despite the fact he's travelling with Ron and Hermione, they refrain from summoning Voldemort until the swelling has gone down. However, Bellatrix sees the sword and believes it to be in her vault at Gringott's Bank. She imprisons Harry and Ron in a cellar where they find Luna, Ollivander (John Hurt
), and a goblin. Bellatrix meanwhile brutally tortures Hermione to try to find out how they stole the sword. Wormtail takes the goblin upstairs to be interrogated, and Harry summons Dobby (Toby Jones
), who frees Luna and Ollivander before breaking Harry and Ron out. They go to rescue Hermione and the goblin, but despite winning the duels with Dobby's help - Harry manages to win Draco's wand and picks up Bellatrix' wand - Bellatrix throws a knife that stabs and kills Dobby as they disapparate. Harry gives Dobby a proper burial on the beach where they appear.
The movie ends with Voldemort opening Dumbledore's tomb and taking the Elder Wand.