1. 防波堤
1940年、ドイツ・ダンケルク。イギリス兵6人が歩いていた。その内、5人が殺害され、たった1人残ったトミー(フィン・ホワイトヘッド)は銃撃を逃れ、何百という兵が死亡した海辺へと向かった。
そこで、若い兵士であるギブソン(アナイリン・バーナード)が、亡くなった兵士たちを弔っていた。トミーは、彼を手伝いに向かう。
そんな中、ドイツのユンカース Ju 87 (急降下爆撃機)が頭上を飛び、爆弾を投下する。ほかの多くの人々が死亡する中、トミーはその中でも生き延びていた。トミーは、負傷した兵士が死んだのを発見する。
トミーとギブソンは、負傷者に船を運んでいる兵士を見かけ、医者と偽って、負傷者を運ぶふりをして船に乗り込もうとする。だが、途中で乗船を拒否される。トミーとギブソンは、次の船が現れるまで、防波堤に隠れる。彼らが待っている間、ボートは攻撃されて沈んでしまうが、トミーとギブソンは、アレックス(ハリー・スタイルズ)という兵士を救う。
海軍の司令官・ボルトン(ケネス・ブラナー)と、ウイナント(ジェームズ・ダーシー)は、兵士を救助し、安全に帰還させようとしていた。兵士たちは船に乗り、わずかばかりの食べ物と水を少し得る。
アレックスは、船に乗っているとギブソンが不安そうにしているのを見る。そんな中、船は魚雷に当たって、沈んだ。ギブソンは船から出て、トミー、アレックスたちも船から降りるのだった。。
ビーチに戻り、生き残ったイギリス人兵士たちは、スコットランドの兵士たちと潮流の中の船を目指した。だが、彼らはすぐにドイツ兵の標的となってしまった。アレックスは、ギブソンを船から降ろそうとして、ギブソンがドイツのスパイであると非難するのだった。
だが、ギブソンはフランス人だった。彼は、制服とタグを、亡くなった兵士の遺体から手に入れていたのだった。沈みゆく船の中、兵士たちは溺れていくのだった。
2. 海
王立海軍は、兵士を救出するため、民間の船を利用することにした。ドーソン(マーク・ライランス)は、息子のピーター(トム・グリン・カーニー)とともに、船を運んでいた。 2人は、ジョージ(バリー・ケーガン)と合流する。
船は、沈んだ英国船を通り過ぎた。その沈んだ船には、兵士が乗っていた。ドーソンは名前を訊ねるが、兵士は沈黙したままだった。ジョージは、お茶を差し出そうとするが、兵士はそれを叩き落とす。
兵士は、「どこに向かっているのか?」と、ドーソンに尋ねる。ドーソンは「ダンケルク」と答えた。兵士は、そこに戻ることを恐れているようだった。彼は、ドーソン氏から船を奪おうとする。もみ合いとなった結果、ジョージは頭を強く打ちつけてしまう。
ピーターは、ジョージの傷を手当しようとする。だが、ドーソンは、助けを求めるのには、遠くに来過ぎてしまったと思う。
3. 空
ファリアー(トム・ハーディ)とコリンズ(ジャック・ロウデン)を含む3人の戦闘機パイロットが海上を飛行していた。そんな中、コリンズの戦闘機が撃墜されてしまう。
機体が海面へと落下し、コリンズは操縦席から脱出しようとしていたが、海水が入り込んでしまい、身動きがとれなくなった。そんな中、ピーターがやってきて、コリンズを助け出す。
民間の船が、イギリス人兵士を救出するため、多く集まってきた。そんな中、ファリアーは戦闘機の燃料がなくなり、浜辺に不時着する。ファリアーは、不時着すると、すぐさまドイツ兵につかまってしまった。
一方、ドーソンは、トミー、アレックスを船に乗せる。戦闘のショックで怯える兵士は、死んでるジョージについて、「彼は大丈夫なのか?」と訊ねるが、ピーターは心配させまいと、「はい」と嘘をつく。
ドーソンは、救命活動をした後、家に帰った。ピーターは、ジョージの写真を手に入れ、「彼がヒーローとして、忘れられないように」と、地元紙へともっていくのだった。
兵士たちは、汽車で帰還していた。アレックスは、敗走したことを責められるのではないか、と考えていた。そんな中、チャーチルからの退去に関する新聞を読み、それをトミーに呼んでくれるよう頼む。トミーは、その新聞を読み上げるのだった。