ハンナ（シアーシャ・ローナン）はプラチナブロンドの16歳の少女。北極に近いフィンランド森林地帯の人里離れた電灯もない小屋に、父エリック（エリック・バナ）と2人きりで住み、日々サバイバル能力を磨いている。ハンナは父に教わり、英語、ドイツ語、スペイン語、アラビア語もマスターしていた。小屋にはラジオもテレビもなく、読める本は英語の百科事典とハンナが隠し持つグリム童話だけ。そのグリム童話の本には、若き日の母の写真が忍ばせてある。父は一般的な情愛の念をハンナに見せず、もっぱらハンナのサバイバル能力を磨くのに専念していた。また偽の経歴や住所を、いつでもすらすらと説明できるように繰り返し仕込む。狩りに出たハンナは、トナカイを矢で射留め、瀕死となったトナカイに近づくと、命を奪う直前すまなそうに「心臓を外しちゃった」と呟く。父はそんな彼女に容赦なく襲いかかり、油断の恐ろしさを教え「トナカイは自分で持ち帰れ」と言い捨てて冷たく立ち去る。ソリに乗せ、どうにかトナカイの死体を小屋に持ち帰り、憐憫の情も見せずに黙々と皮を剥ぎ、肉を処理するハンナ。「私の用意はできているわ」としきりとせがむハンナに、ある日、父は「この装置のスイッチを入れれば外界に出ていける」と教える。父が狩りに出ている間に、ハンナは決心して装置のスイッチを入れる。すると、米国CIAエージェントのマリッサ・ウィーグラー（ケイト・ブランシェット）がその信号に気づいた。ハンナが装置を作動させたことを知った父は、髪を切り髭を剃り、スーツ姿で一人小屋を離れる。間もなく、ヘリコプターでCIAエージェント率いる一個小隊が小屋を襲った。２人の兵隊をたちまち片付けたハンナだが、彼らに囚われ、どこかに拉致される。基地で身体検査及びDNA検査を受けたハンナ。マリッサと名乗る女性エージェントが部屋を訪れた時、ハンナは泣きじゃくりながら彼女に抱きつく。しかし次の瞬間、女性エージェントはハンナに絶命させられていた。「魔女を殺した」と信じこむハンナ。背筋の凍る思いをする本物のマリッサ。ハンナは自分の身体検査レポートを入手し、追いすがる兵を次々と倒し、基地の外へと脱出した。だがそこは一面の砂漠と荒野だった。かつてマリッサと同じCIAエージェントだったエリックと、ハンナの母ヨハンナ、そしてまだ幼児のハンナは、ある機関から車で逃走中に、立ちふさがったマリッサの銃弾で車が脱輪炎上、逃げ遅れたヨハンナがマリッサの手で殺されたのだった。死に際に「あなたは永遠に、彼女を捕らえられないわ」と謎の言葉を呟いたヨハンナ。以来、マリッサは繰り返しその言葉を思い出すのだった。時は戻り現代。ハンナは逃走のさ中、キャンピングカーで通りかかった英国人一家の娘ソフィー（ジェシカ・バーデン）とその弟マイルズ（アルド・マランド）に出会う。しばしの会話の後、彼らと別れたハンナは、川の近くを通る際に、原住民が洗濯をしている衣服を盗み着て、彼らに溶け込む。追っ手から逃れ、到達したマラケシュで古宿に入ったハンナは、主人の温情で無償で空き部屋を一晩提供してもらう。そこで自分がモロッコにいることを知る。生まれて初めて電灯、テレビ、扇風機、湯沸かし器に接してパニックに陥るハンナだった。同じ頃、マリッサはとあるショーパブを訪れ、旧知の仲のアイザックス（トム・ホランダー）という男に汚れ仕事を依頼する。報酬と引き換えに、アイザックスはそれを引き受ける。町で再びソフィーと再会したハンナは一家の厚意でその夜、食事に招かれる。翌朝、ソフィー一家は旅立ち、ハンナの行方を追うアイザックスら3人は宿を嗅ぎ付け、宿の主を拷問する。防犯カメラの映像から、出発するソフィー一家のキャンピングカーにハンナが忍び込んでいた事を突き止めたアイザックスは宿主を始末し、跡を追う。エリックは遠泳のあげく、海辺の宿に身を寄せる。そこには1枚のポストカードが届いていた。「魔女は死んだ」とだけ書かれたハンナからのメッセージに、安堵するエリック。駐車中のキャンピングカーから抜け出したハンナはリゾートホテル内のプールサイドでソフィーと鉢合わせし、彼女に誘われるまま、ホテルで知り合った2人の青年と共に遠出し、ロマの歌と踊りに接し、またキスのときめきも初めて味わう。だがハンナは今まで仕込まれてきたサバイバル能力で、反射的にキスの相手を地面に押し倒し、制圧してしまうのだった。その頃、マリッサ・ウィーグラーはヨハンナの母（ハンナの祖母）カトリンの自宅に押し入り、ハンナの居所を脅して吐かせようとしていた。だがカトリンはヨハンナの写真を前に「子供を育てたことはあるの? 何年も居所が解らず、ただ待つだけの日々の虚しさが、あなたに解る?」と毅然と言いのけ、情報提供をガンとして拒む。ヨハンナの写真と共に、カトリンはマリッサに眉間を撃ち抜かれ倒れた。「本当のあなたは誰なの? 友達だったら教えてよ。私はあなたが好きよ」と、同じベッドで問うソフィーに「私もあなたのことが好きよ。でもだからこそ、あなたを危険に晒さない為、どうしても言えないことがあるの」と告げるハンナ。翌朝、ハンナはソフィーの両親とも再び顔を合わせ、一家と行動を共にする事になる。キャンピングカーによる移動を始めるがアイザックスら追っ手3人組は、ハンナとソフィー一家を尾行し続ける。ハンナもそれに気づいた。エリックは一足早くベルリンに到着していたが、待ち伏せていたエージェントたちに追われる。どうにか追っ手を倒した際、ハンナがマリッサを殺害できなかったことに気づき、ホテルに滞在していたマリッサを急襲するが、彼女に致命傷を負わせることができないまま逃走するのだった。ソフィーの母レイチェル（オリヴィア・ウィリアムズ）が「道を間違えた」とキャンピングカーを止めた事により、3人組がいつ襲撃してくるか分からない危険な状態となる。ハンナはソフィーに「絶対に私のことを追わないで」と念を押すと車を飛び出し、敵の注意を引きつける。倉庫に逃げ込み、貨物コンテナの間を縫って走り続け、追っ手と戦うハンナ。ソフィーはハンナの身を案じ結局は後を追って来てしまい、彼女が敵を絶命させるところを目撃してしまう。ハンナは追っ手2人を葬り倉庫から出ると、ヘドロの海に飛び込みアイザックスの手を逃れるが、ソフィー一家はマリッサらの手に落ちてしまう。ソフィーの両親セバスチャンとレイチェルから聞き出した情報が、デタラメだと見抜いたマリッサは、「ハンナを助けるため」と幼い弟マイルズを丸め込む。騙されたマイルズは必死に記憶を辿り「ハンナはベルリンに行くって言ってたよ。グリムの家でパパに会うんだって」とマリッサに告げる。その頃、ハンナはついにベルリンに到着し、荒廃した遊園地内の「グリムの家」を訪れ、不思議な長髪の男ネプラーに招き入れられていた。そこが、父のエリックが繰り返し彼女に覚えこませた住所だった。ネプラーは長年、彼女が訪れるのを待っていたと言い、ハンナの母は歌手だったと告げ、レコードを掛けてくれるが、そこにマリッサと追っ手たちが襲いかかる。ハンナは2階のベッド下に隠れ、追っ手が仇のマリッサであり、彼女がまだ生きていたことを悟る。さらに、マリッサの電話での会話によって、ハンナは自分がエリックの実子ではないのではないかと疑い出す。グリムの家を何とか脱出し、インターネットカフェで遺伝子操作や過去に行われた生体実験、エリックの素性について調べたハンナは、エリックが母ヨハンナを殺した犯人とされていることを知る。またヨハンナの母の住所も知り、その部屋を訪れると、そこで血溜まりと銃弾で割れた母の写真を発見する。そこにエリックが現れた。動揺したハンナがエリックに「あなたは、私の父じゃないのね？ 私は何なの？」と詰め寄ると、エリックはハンナを実の娘のように愛していることを強調した上で真実を語る。かつて「完璧な兵士」を作るための研究を行っていたポーランド・ガリンカの研究所で、恐れや哀れみの感情を減らし、筋力を向上し、感覚を鋭くするように胎児の段階で手を加えて生まれた子供たちの1人がハンナであり、ハンナの母はエリックが堕胎クリニックでスカウトした20人の母親たちの1人だった。ところが、ハンナが2歳の時にマリッサが計画を中止したために、母子たちは抹殺され、ハンナだけが唯一の生き残りとなったのである。ハンナは激しいショックを受ける。そこにアイザックスらが現れ、エリックは彼らを引きつけてハンナを逃がす。アイザックスらを辛うじて倒したエリックだったが、そこにマリッサが現れ、エリックは撃ち殺される。ネプラーの死体を見つけたハンナは、死体に刺さっていた矢を抜き取り、追って来たマリッサから逃げる。執拗に追いかけて来るマリッサと対峙したハンナは、マリッサが発砲すると同時に矢をマリッサに撃ち込む。ハンナは腰を撃たれたものの、マリッサに深手を負わせた。ハンナは彼女を追いかけ、マリッサは何とか逃げようとするが足を滑らせて転倒する。そして、ハンナはマリッサが落とした銃で彼女を撃ち殺す。