In New York City, the Bonwit Teller department store is destroyed by a bomb during the morning commute. The New York City Police Department receive a call from "Simon" ordering them that suspended police officer Lt. John McClane be dropped in Harlem wearing a sandwich board that says "I Hate Niggers" and threatening to detonate another bomb if they don't comply. They collect McClane and follow Simon's instructions. McClane is saved from an angry group of men by Zeus Carver, a nearby shop owner. McClane and Carver escape and return to headquarters, where Simon calls again and threatens to detonate more bombs if McClane and Carver do not follow his instructions.
Simon sends the two on a series of children's riddles. He tells them to reach the Wall Street subway station 90 blocks south, within 30 minutes to stop a bomb planted on a Brooklyn-bound 3 train. McClane boards the subway while Carver drives. Though McClane locates the bomb and throws it off the train, it still detonates, derailing the train and sending it through the station with minimal injuries due to Carver's warnings. As McClane and Carver regroup with the police, they are met by FBI agents, who reveal Simon is Peter Krieg, a former Colonel in the East German People's Army and a mercenary-for-hire. Krieg is after McClane as Krieg's birth name is Simon Peter Gruber, the brother of Hans Gruber whom McClane had killed years earlier in Los Angeles. Simon calls the police, knowing the FBI is there, to inform them that he has planted a bomb in a NYC-area public school that is rigged with a radio detonator triggered by the police band. Simon tells them that he will give McClane and Carver the school's location if they continue to play his game. While McClane and Carver set off on Simon's next task, the police organize all the city's public works to begin searching schools, using 9-1-1 to coordinate activities.
As McClane solves Simon's riddles, he recognizes that Simon is using the school bomb distraction to draw the police away from Wall Street. They arrive too late to find that Simon and his agents used the destruction of the subway station to dig into the Federal Reserve Bank of New York and steal $140 billion of gold bullion in dump trucks. They follow the trucks to an aqueduct in the New York City Water Tunnel No. 3, and McClane has Carver continue on Simon's games. Within the tunnel he kills some of Simon's men, discovering they have a roll of quarters on them. Simon destroys a cofferdam, flooding the tunnel, but McClane escapes through a vent, ending up near Carver. They recognize the roll of quarters would pay for a toll road, and follow the trucks to a tanker vessel in the Long Island Sound. They sneak aboard, but realize too late it is a trap. They are tied to the real bomb and Simon says he will destroy the tanker, redistributing the bullion across the Sound, which would destroy the economies of the world. McClane convinces Simon to give him a bottle of aspirin. McClane is able to free them from the bomb before it explodes, sinking the tanker.
As McClane and Carver are debriefed by the police, McClane says he knows Simon and reports that none of the bullion was on the tanker. McClane finds the bottle of aspirin came from a hotel just inside the Quebec border. McClane, Carver, and the police launch an attack on a warehouse near the hotel where Simon and his men are in the process of distributing the wealth and planning their escape. The rest of the men are captured, while Simon and his girlfriend Katya attempt escape in a helicopter, firing upon McClane. McClane shoots an overhead power line so that it falls onto the helicopter, crashing it and killing all aboard. With the bullion located, Carver convinces McClane to call his wife.
- Bruce Willis as NYPD Lieutenant John McClane
- Jeremy Irons as Simon Gruber
- Samuel L. Jackson as Zeus Carver
- Graham Greene as NYPD Detective Joe Lambert
- Colleen Camp as NYPD Detective Connie Kowalski
- Larry Bryggman as NYPD Inspector Walter Cobb
- Anthony Peck as NYPD Detective Ricky Walsh
- Nick Wyman as Mathias Targo
- Sam Phillips as Katya
- Stephen Pearlman as Dr. Fred Schiller
- Kevin Chamberlin as Charles Weiss
- Mischa Hausserman as Mischa
- Richard E. Council as Otto
- Robert Sedgwick as Rolf
- Tony Halme as Roman
- Timothy Adams as Gunther
- Phil Theis as Erik