One year after the events of Die Hard, John McClane (Bruce Willis), is waiting on Christmas Eve at Washington Dulles International Airport for his wife Holly (Bonnie Bedelia) to arrive from Los Angeles, spots two men dressed in army fatigues and carrying a package. Following them into the baggage area, McClane ends up in a fight, killing one of them while the other escapes. Learning the dead man is a mercenary who was thought to be killed in action, McClane believes something is about to happen.
Former U.S. Army Special Forces Colonel Stuart (William Sadler) and other former members of his unit, set up a base in a small church near the airport. They take over air traffic control systems, stating that they want to rescue Ramon Esperanza (Franco Nero), a drug lord and dictator of a South American country named Val Verde, who is flying in for a trial. They demand a Boeing 747 so they can escape to another country, and warn the Dulles controllers not to try to restore control. Upon learning about this, McClane becomes upset because his wife is on one of the planes which are circling above Washington with too little fuel to be redirected and therefore most likely to crash if the terrorists remain in control, and therefore decides to fight the terrorists.
Dulles communications director Leslie Barnes (Art Evans) heads to the unfinished Annex Skywalk with a SWAT team to establish communications with the planes. Stuart's men ambush them, killing the SWAT team. Before they can kill Barnes, McClane bursts in and kills Stuart's men.
Stuart responds by using the instrument landing system to crash a plane, killing everyone on board.
A two-way radio dropped by one of Stuart's men tips McClane off that Esperanza is landing. He gets there before Stuart's men, but Stuart traps him in the cabin and throws grenades into the cockpit. McClane escapes through the ejection seat. McClane returns to the airport to find an Army Special Forces team led by Major Grant (Amos) has arrived. Barnes and McClane discover where the mercenaries are located and tell Grant and his team to raid it. However, the mercenaries escape on snowmobiles. McClane pursues them, but finds that the gun he picked up does not work. He realizes the mercenaries and Special Forces were using blanks in their guns and are working together.
McClane contacts the airport police to send out officers to intercept the plane. Reporter Richard Thornberg (Atherton), on the same flight as Holly, phones in a sensational take on what is happening at Dulles, leading to panic in the airport, and preventing the officers from reaching the plane. McClane hitches a ride on a news helicopter, which drops him off on the wing of the plane. Grant comes out to fight, but ends up sucked into the engine. Stuart kicks McClane off the plane, but McClane manages to open the fuel hatch. He uses a cigarette lighter to ignite the trail of leaking fuel, destroying the plane and killing all on board. The other planes, circling in the air, use the lighted trail to land, and Holly and McClane are reunited.