LAPD SWAT bomb disposal officers Jack Traven (Keanu Reaves) and Harry Temple (Jeff Daniels) thwart an attempt to hold an elevator full of people for a $3 million ransom by an extortionist bomber, later identified as Howard Payne (Dennis Hopper). As they corner Payne, he takes Harry hostage. Jack intentionally shoots Harry in the leg, forcing the bomber to release him. Payne flees and sets off the bomb, seemingly dying in the process. Jack and Harry are praised by Lieutenant "Mac" McMahon (Joe Morton), with Harry being promoted. Having survived the incident, however, Payne watches from afar.
The next morning, Jack witnesses a mass transit bus explode. Payne contacts Jack on a nearby payphone, explaining that a similar bomb is rigged on another bus, which will activate once it reaches 50 miles per hour (80 km/h) and detonate if it drops below 50. He also demands a ransom of $3.7 million and threatens to detonate the bus if the passengers are offloaded. Jack races through freeway traffic and boards the bus, but the bomb is already armed. He explains the situation to Sam Silver, the bus driver (Hawthorne James). However, a criminal on board, fearing Jack is about to arrest him, wildly discharges his gun, accidentally wounding Sam. Another passenger, Annie Porter (Sandra Bullock), takes over for Sam, but when she tries to slow down so he can get help, Jack is forced to reveal the bomb, to the passengers' shock and horror. Jack examines the bomb underneath the bus and calls Harry, who works to identify the bomber.
After a harrowing adventure through city traffic, the police clear a route to an unopened freeway. Mac demands that they offload the passengers onto a flatbed trailer, but Jack warns him about Payne's plot. Witnessing the events on TV, Payne calls Jack to reiterate his instructions. While he is convinced to allow the injured Sam to be offloaded for medical attention as a show of good will, Payne detonates a smaller bomb after witnessing a passenger shaken by everything that's happened attempt to get off, killing her.
When Jack learns part of the freeway is incomplete, he persuades Annie to accelerate so they can jump the gap, which narrowly succeeds, before directing her to a nearby airport to use their unobstructed runways. Meanwhile, Harry identifies Payne's name, former occupation as an Atlanta Police Department bomb squad officer, and address. He leads a SWAT team to Payne's home, but the property explodes, killing all of the SWAT team and Harry.
In a last-ditch attempt to defuse the bomb, Jack goes under the bus on a towed sled, but he accidentally punctures the fuel tank when the sled breaks from its tow line. After the passengers bring him back aboard, Jack learns that Harry has been killed and that Payne has been watching the passengers on a hidden surveillance camera the whole time, allowing him to be a step ahead of Jack at every moment. Mac has a local news crew record the transmission and rebroadcasts it on a loop to fool Payne while the passengers are offloaded onto an airport bus. Jack and Annie escape through a floor access panel before the empty bus collides with a Boeing 707 cargo plane and explodes.
Jack and Mac head to Pershing Square to drop the ransom. Realizing that he has been fooled, no one died in the explosion, and the LAPD are waiting for him, a furious Payne poses as a police officer to kidnap Annie and recover the ransom. Jack follows Payne into the Metro Red Line subway, and discovers that Annie has been fitted with an explosive vest rigged to a pressure-release detonator. Payne hijacks a subway train, handcuffs Annie to a pole, and sets the train in motion while Jack pursues them. After killing the train engineer, Payne attempts a bribe with the ransom money, but a dye pack in the bag explodes, tainting the money. Pushed into a psychotic frenzy, a crazed Payne battles Jack on the train's roof and taunts Jack by telling him he's smarter than anything he's done before, and then Jack causes Payne to be decapitated by a railway signal which he lets out a remark of Jack being taller.
Jack deactivates Annie's vest, but cannot free her from the pole as Payne had the key to her handcuffs. Unable to stop the train, Jack accelerates it, causing it to derail, plow through a construction site, and burst onto Hollywood Boulevard. Unharmed, Jack and Annie share a kiss while a crowd looks on in amazement.
Keanu Reeves as Officer Jack Traven
Dennis Hopper as Howard Payne
Sandra Bullock as Annie Porter
Joe Morton as Lieutenant Herb 'Mac' McMahon
Neisha Folkes-LeMelle as Mrs. McMahon
Jeff Daniels as Officer Harry Temple
Margaret Medina as Officer Robin
Richard Lineback as Sergeant Norwood
Beau Starr as Commissioner
Jordan Lund as Bagwell
Alan Ruck as Doug Stephens
Carlos Carrasco as Ortiz
Glenn Plummer as Maurice
Daniel Villarreal as Ray
Beth Grant as Helen
Natsuko Ohomama as Mrs. Kamino
David Kriegel as Terry
Hawthorne James as Sam Silver
Richard Schiff as Train Driver
John Capodice as Bob
Thomas Rosales Jr. as Vinnie
Sandy Martin as Bartender