In 1942, following the invasion of the Soviet Union the year before, Vasily Zaytsev (Jude Law), a shepherd from the Ural Mountains who is now a soldier in the Red Army, finds himself on the front lines of the Battle of Stalingrad. Forced into a suicidal charge by barrier troops against the invading Germans, he uses impressive marksmanship skills—taught to him at a young age by his grandfather—to save himself and commissar Danilov (Joseph Fiennes).
Nikita Khrushchev (Bob Hoskins) arrives in Stalingrad to coordinate the city's defences and demands ideas to improve morale. Danilov, now a senior lieutenant, suggests that the people need figures to idolise and give them hope, and publishes tales of Vasily's exploits in the army's newspaper that paint him as a national hero and propaganda icon. Vasily is transferred to the sniper division, and he and Danilov become friends. They also both become romantically interested in Tania Chernova (Rachel Weisz), a citizen of Stalingrad who has become a private in the local militia. Danilov has her transferred to an intelligence unit away from the battlefield.
With the Soviet snipers taking an increasing toll on the German forces, German Major Erwin König (Ed Harris) is deployed to Stalingrad to take out Vasily and thus crush Soviet morale. A renowned marksman and head of the German Army sniper school at Zossen, he lures Vasily into a trap and kills two of his fellow snipers, but Vasily manages to escape. When the Red Army command learns of König's mission, they dispatch König's former student Koulikov (Ron Perlman) to help Vasily kill him. König, however, outmaneuvers Koulikov and kills him with a very skillful shot, shaking Vasily's spirits considerably. Khrushchev pressures Danilov to bring the sniper standoff to a conclusion.
Sacha, a young Soviet boy, volunteers to act as a double agent by passing König false information about Vasily's whereabouts, thus giving Vasily a chance to ambush the major. Vasily sets a trap for König and manages to wound him, but during a second attempt Vasily falls asleep after many sleepless hours and his sniper log is stolen by a looting German soldier. The German command takes the log as evidence of Vasily's death and plans to send König home, but König does not believe Vasily is dead. The commanding German general takes König's dog tags to prevent Russian propaganda from profiting if König is killed. König also gives the general a War Merit Cross that was posthumously awarded to König's son, who as a lieutenant in the 116th infantry division was killed in the early days of the Battle for Stalingrad. König tells Sasha where König will be next, suspecting that the boy will tell Vasily. Tania and Vasily have meanwhile fallen in love and have sex in the Russian barracks at night. The jealous Danilov disparages Vasily in a letter to his superiors.
König spots Tania and Vasily waiting for him at his next ambush spot, confirming his suspicions about Sasha. He then kills the boy and hangs his body off a pole to bait Vasily. Vasily vows to kill König, and sends Tania and Danilov to evacuate Sasha's mother (Eva Mattes) from the city, but Tania is wounded by shrapnel en route to the evacuation boats. Thinking she is dead, Danilov regrets his jealousy of Vasily and expresses disenchantment over his previous ardency for the Communist cause. Finding Vasily waiting to ambush König, Danilov intentionally exposes himself in order to provoke König into shooting him and revealing his hidden position. Thinking that he has killed Vasily, König goes to inspect the body, but realizes too late that he has fallen into a trap and is in Vasily's sights. He turns to face Vasily and takes off his hat, after which Vasily kills him. Two months later, after Stalingrad has been liberated and the German forces have surrendered, Vasily finds Tania recovering in a field hospital.
Vasily Zaitsev was a senior sergeant of the 2nd Battalion, 1047th Rifle Regiment, 284th Tomsk Rifle Division. He was interviewed by Vasily Grossman during the battle and the account of that interview, lightly fictionalized in his novel, Life and Fate (1959), is substantially the same as that shown in the movie without naming the German sniper with whom he dueled.
Historian Antony Beevor suggests in his non-fiction book Stalingrad (1998) that, while Zaitsev was a real person, the story of his duel (dramatised in the film) with König is fictional. Although William Craig's book Enemy at the Gates: The Battle for Stalingrad (1973) includes a snipers' duel between Zaitsev and König, the sequence of events in the film is fictional. Zaitsev claimed in an interview to have engaged in a sniper duel over a number of days. Zaitsev, the only historical source for the story, stated that after killing the German sniper and upon collecting his tags, he found that he had killed the head of the Berlin Sniper School. No sniper named König has ever been identified in the German records.
In the film, Jude Law (portraying Zaitsev) uses a 7.62×54mmR Mosin Model 1891/30 sniper rifle with a PU 3.5 power sniper scope (i.e., the image is magnified three and a half times); Vasily Zaitsev used a Model 1891/30 sniper rifle with an earlier and larger sniper telescope (his rifle is preserved in Stalingrad History Museum in Russia). Also, the poster for the film reverses the Mosin 91/30 rifle photograph so that the bolt handle appears on the left side of the rifle instead of the right side where it should be.
The film portrays Zaitsev as barely able to read or write, while in reality he had taken construction and accounting courses and worked in administrative duties. Tania's character was also heavily fictionalized. She was, according to her own reports, actually a sniper herself who trained under Zaitsev during the war and became one of the most infamous and ruthless snipers at Stalingrad (although this is doubted by Antony Beevor). She was motivated to join the war as a means to avenge her grandparents who were murdered by invading Nazis.
Based on 137 reviews collected by Rotten Tomatoes, the film received a 54% approval rating from critics with an average score of 5.7/10. The reviews were summarized as "Atmospheric and thrilling, 'Enemy at the Gates' gets the look and feel of war right. However, the love story seems out of place." Metacritic, which assigns a normalized rating in the 0–100 range based on reviews from top mainstream critics, calculated an average score of 53 based on 33 reviews.
Roger Ebert gave the film three stars out of four and wrote that it "is about two men placed in a situation where they have to try to use their intelligence and skills to kill each other. When Annaud focuses on that, the movie works with rare concentration. The additional plot stuff and the romance are kind of a shame." New York Magazine's Peter Ranier was less kind, declaring "It's as if an obsessed film nut had decided to collect every bad war-film convention on one computer and program it to spit out a script." Peter Travers of Rolling Stone admitted the film had faults, but that "any flaws in execution pale against those moments when the film brings history to vital life."
The film was poorly received in the former Soviet Union. Some Red Army Stalingrad veterans were so offended by inaccuracies in the film and how the Red Army was portrayed that on 7 May 2001, shortly after the film premiered in Russia, they expressed their displeasure in the Duma, demanding a ban of the film, but their request was not granted.
The film was also received poorly in Germany. Critics claimed that it simplified history and glorified war. At the Berlinale film festival, it was booed. Annaud stated afterwards that he would not present another film at Berlinale, calling it a "slaughterhouse" and claiming that his film received much better reception elsewhere.
The soundtrack to Enemy at the gates was released on March 31, 2009.