In 1940, during the Battle of France, Allied soldiers have retreated to Dunkirk. Tommy, a young British private, is the sole survivor of a German ambush. At the beach, he finds thousands of troops awaiting evacuation and meets Gibson, who is burying a body. After a Luftwaffe dive bomber attack, they attempt to get aboard a hospital ship, but are ordered off. The ship is sunk by dive bombers; Tommy saves another soldier, Alex. They get aboard a destroyer, only to have it torpedoed and sunk before it can depart.
With a single, vulnerable mole available for embarking on deep-draft ships, the Royal Navy requisitions civilian vessels in Great Britain that can get to the beach. In Weymouth, a civilian sailor Dawson, with his son Peter, sets out on his boat Moonstone, rather than let the Navy commandeer her. Their teenage hand George impulsively joins them. At sea, they rescue a shivering shell-shocked soldier from a wrecked ship. When he realises that Dawson is sailing for Dunkirk, the soldier demands that they turn back and tries to wrest control of the boat; in the scuffle, George suffers a head injury that renders him blind. Elsewhere, three Spitfires, tasked with defending the evacuation, cross the English Channel. After their leader is shot down in a dogfight, one of the pilots, Farrier, assumes command, but the other Spitfire is hit and ditches. Its pilot, Collins, is rescued by Moonstone.
Tommy, Alex and Gibson join some soldiers of a Highlanders regiment and hide inside a beached trawler in the intertidal zone outside the Allied perimeter, waiting for the rising tide to refloat it. During the wait, German troops start shooting at the boat for target practice, and water enters through the bullet holes. Alex, hoping to lighten the boat, accuses Gibson, who has stayed silent, of being a German spy. Gibson reveals he is French; he stole the identity of the dead British soldier he buried, hoping to be evacuated with the British. The group abandons the boat when it begins to sink, but Gibson is entangled in a chain and drowns. When a nearby minesweeper is sunk by a bomber, Moonstone manoeuvres to take on those in the water, including Tommy and Alex. Peter discovers that George is dead. Asked by the shell-shocked soldier, he lies and says that George will be fine.
Farrier reaches Dunkirk just as his fuel runs out. Gliding over the beach, he shoots down a dive-bomber, saving ships and troops, and lands beyond the perimeter. He sets fire to his plane before being taken prisoner by the Germans. In all, over 300,000 men are evacuated. Royal Navy Commander Bolton stays to oversee the evacuation of the French. Arriving back in Weymouth, the shell-shocked soldier sees George's body being carried away. Tommy and Alex board a train, and receive a hero's welcome when the train arrives in Woking. Tommy reads Churchill’s address to the House of Commons citing the “miracle of deliverance” in Dunkirk.
Fionn Whitehead as Tommy
Tom Glynn-Carney as Peter
Jack Lowden as Collins
Harry Styles as Alex
Aneurin Barnard as Gibson
James D'Arcy as Colonel Winnant
Barry Keoghan as George
Kenneth Branagh as Commander Bolton
Cillian Murphy as Shivering Soldier
Mark Rylance as Mr Dawson
Tom Hardy as Farrier