This is a slightly different ending from the Swedish movie as well as the novel.
Mikael Blomkvist (Daniel Craig) hires Lisbeth Salander (Rooney Mara) to help him uncover the truth behind the disappearance, and possible murder, of Harriet Vanger (Christopher Plummer), great-niece of corporate mogul Henrik Vanger. In addition to substantial pay, Vanger also promises Blomkvist that he will expose Hans-Erik Wennerstrom, who had Blomkvist falsely convicted as a libeler. They uncover a series of serial rapes and murders that span from 1948 to 1967. Harriet disappeared in 1966. During their partnership, the introverted Salander develops strong feelings for Blomkvist.
Martin Vanger (Stellan Skarsgård) is the killer. His father Gottfried used to make him watch while he raped Harriet. Gottfried also taught Martin how to torture, rape, and kill women. Gottfried committed some murders with and without Martin present, but drowned in 1965, a year before Harriet disappeared.
Blomkvist is taken prisoner by Martin, who genuinely known nothing of Harriet's current whereabouts. Surveillance videos reveal to Saander that Martin had been snooping around Blomkvist's cabin in Hedestad, so she goes to Martin's house looking for him. She finds the torture room in Martin's basement just as Martin is about to stab Blomkvist. Before he can, Salander strikes him in the jaw with a golf club. Martin escapes to his car, but Salander follows him on her motorcycle. Martin, in an attempt to cut her off, overturns his car, which subsequently explodes. As there is no evidence to link Martin's death to Salander nor Blomkvist, plus the obvious press that would surround the Vanger family if Martin's secrets were revealed, they choose to keep Martin's secret to themselves.
Blomkvist uncovers the truth of Harriet's disappearance. She had taken the identity of her cousin Anita and was living in London. The real Anita had died in a car accident some twenty years prior. When she is informed that Martin is dead, Harriet opens up to Blomkvist about the abuse she endured at the hands of her father and brother. She recalls the night when her father got so drunk it was easy to subdue him under the water near their home with an oar.
Harriet returns to Hedestad to pay a visit to Henrik Vanger. Vanger gives Blomkvist insufficient information to corrupt Wennerstrom, but Salander is able to fix that. Wennerstrom is exposed, and later murdered off-screen. Salander buys Blomkvist a leather jacket for Christmas, but is heartbroken when she sees him walking with his occasional lover Erika Berger. Salander tosses the present in a dumpster and rides off.