Frank Moses (Bruce Willis
) lives a very routined life alone in the suburbs of Panama Heights, Ohio. He wakes most mornings before six, makes breakfast, exercises, and retrieves his mail. Christmas is approaching and he decides to follow his neighbors' example of decorating his lawn with a few holiday items. Upon receiving a social security check in the mail, he promptly tears it in half and calls the pension office to speak to his case worker, Sarah Ross (Mary-Louise Parker
). She tells him that he will be sent another check but it's clearly evident that Frank simply calls in to be able to speak with her. They get along and chat about mundane things including which books she's reading and how many leaves are growing on Frank's avocado seed. One day, Frank plucks up the courage to say that he'll be in Kansas City the following week, where she lives, and would like to meet her and take her out to dinner. Though nervous about meeting him face to face, Sarah agrees, becoming excited.
In the middle of the night, Frank wakes up, dons his robe, and wanders sleepily downstairs. As he turns a corner towards the kitchen, three men wearing SWAT gear follow silently behind him. They watch as he enters the kitchen and closes the door. With the go-ahead, one man kicks the door in but finds the kitchen empty. As they look for him, Frank suddenly appears and takes them all out one by one with silent precision. Noticing more men waiting outside, Frank takes a handful of bullets and puts them in a frying pan with oil and turns on the stove. He goes into the basement and sledgehammers through the floor to a hidden depository where a packed bag, money, weapons and ammunition, and passports are stored. Upstairs, the bullets cook off, giving the impression of a gunfight, and the operatives waiting outside open fire on Frank's house with automatic rifles. They enter the house but Frank's skills enables him to quickly subdue the assassins. He walks away from his home unscathed as his front porch collapses.
Sarah returns home from a bad blind date, muttering about the man's not-so-ideal qualities. "Oh really, you live with your mother," she says to herself as she grabs a beer from the fridge and walks into her living space...right past Frank who is standing in her hallway. He tentatively waves at her and smiles but she begins throwing things at him and demands that he leave. He tries to calmly tell her, with no success, that someone is trying to kill him and that they will have been listening in on his calls, thereby knowing who Sarah is and where she lives. As if on cue, a black van full of operatives arrives outside Sarah's apartment. Frank apologizes to Sarah and takes her with him just before the assassins break into her apartment. As he drives, Frank tries to smooth things over with Sarah who is tied and gagged with duct tape in the back seat. She mumbles behind the tape and gives Frank looks of disgust.
At Frank's home, a man (Karl Urban
) dressed in a clean, black suit goes through Frank's trash while a special clean up crew goes through the rest of the house. The man finds the torn checks from social security along with other leads.
They drive through the early hours of the morning to a hotel in New Orleans. Frank leaves Sarah tied to the bed, apologizes once more, comments on her beautiful eyes, and leaves, telling her he'll be right back. He goes to meet one of his oldest friends, a fellow retiree living in Green Spring Rest Home. Joe Matheson (Morgan Freeman
), dressed in a red jumpsuit, innocently enough asks a young nurse (Jaqueline Fleming
) to fix the television reception for him but fixes his attention on her rear end as she bends over. Frank enters the room and greets Joe, telling him in private about his assassination attempt. He asks for Joe's help and Joe agrees to do what he can. He's bored, 80 years old and has stage 4 liver cancer. He reminisces about all the things they've been through and admits he never thought about getting old and the perils involved with it. Before Frank leaves, Joe reveals that the same hit squad was apparently responsible for the death of a young New York Times reporter.
Meanwhile, Sarah has managed to escape from her bonds by slamming the headboard of the bed against the wall. She calls 911 and is soon met by police and an ambulance. The paramedics dismiss her and she is led away by an officer who tells her that she will be questioned and brought into protective custody. When she asks to retrieve her purse from the hotel room, the officer grabs her forcefully and begins to inject her with a drug. However, the officer is swiftly killed by Frank, having just arrived. He commandeers the police car and drives away with Sarah as he admits that he was in the CIA for a number of years. Sarah doesn't believe him before she begins to slip into a drugged stupor. Their car is soon intersected by a black van driven by the same man seen in Frank's home. An assassin working for the CIA, William Cooper is a force to be reckoned with, but severely underestimates Frank's ingenuity. Frank calls for backup and labels Cooper as the suspect responsible for an officer's death. As Frank escapes the city with Sarah, Cooper is surrounded by police.
Frank and Sarah drive to New York City to follow up on the reporter's death. Sarah becomes more trusting of Frank and accepts that he is ex-CIA. They find the reporter's mother living in Chinatown and Sarah asks to speak with her to gain her trust. Mrs. Chan (Emily Kuroda
) tells them that her daughter had been found murdered of an apparent robbery gone bad, but nothing was taken from her apartment. She shows a postcard sent from her daughter the day she was killed. On it, Frank reads a series of numbers that no one had been able to previously decode. Frank asks where Chan's daughter went to college and follows that lead to the school's library stacks. He reveals to Sarah that the numbers on the postcard were actually a book's ISB number. It takes them to a certain section of the library where Sarah finds the book containing a piece of paper with a list of names on it. As they check the names, Frank realizes that most of the people on the list have been recently killed.
Joe sits quietly in his room and is approached from behind by an assailant (Lawrence Turner
). Joe asks if 'this is how it's going to be'. Frank attempts to contact Joe but his persistence is finally greeted with the saddened voice of nurse Mary (Justine Wachsberger
) as she stands outside the retirement home near an ambulance. Deflated by the news, Frank tells Sarah that there is yet another person who can help them.
Cooper, meanwhile, goes to the records room of the CIA where the records keeper, Henry (Ernest Borgnine
), provides some background on Frank. A retired black-ops agent, Frank served under the CIA within multiple facets and is an expert in practically every known division of weaponry and combat. Labeled 'Red' (Retired, Extremely Dangerous) after his retirement, Frank is a top ex-agent. However, it's clear that Cooper is also a precision-based man. As an assassin working for the CIA, he has access to top secret information and is a skilled man in his profession. During one interval he is seen in the home of one of his targets (Chris Owens
), placing hair and other bits of evidence around the house to make the target's death seem like a suicide while he casually speaks on the phone with his wife (Michelle Nolden
), promising to bring milk home at the end of the day.
Frank and Sarah drive to Pensacola, Florida and steal a boat to travel to a dilapidated house on the waterfront. Frank advises Sarah to stay close and not make any sudden moves. They are then accosted by a wild looking man dressed in camouflage and armed with a crossbow. Frank tells his old peer, Marvin Boggs (John Malkovich
), that he's not there to kill him despite Marvin's belief otherwise. Satisfied, Marvin takes them into his home...a beat up car out back with a secret stairwell descending from inside the hood of the car; he explains that the house is a decoy. When questioned by Sarah about Marvin's paranoid behaviors, Frank tells her that Marvin suspected correctly that he was part of a mind control program when serving the CIA. He was given daily doses of LSD for eleven years. Frank briefs Marvin on his assassination attempt and their findings, showing him the list of names. Marvin recognizes most of the names as people who were involved in a mission in 1981 in Guatemala, a mission that Marvin and Frank were also a part of. Marvin recalls the clean up they had to do in a village there after most of the inhabitants were massacred and theorizes that all the people involved are now being silenced.
However, one person on the list remains alive. Gabriel Singer (James Remar
) now works at an airport in the cargo bay and Marvin agrees to accompany Frank and Sarah to question him. Marvin becomes excited and exclaims that he's 'going to get the Pig!'. They arrive at the airport together, Marvin holding a stuffed, pink pig beneath his arm, and enter the terminal only to see Marvin grab a hold of a woman in a business suit and threaten her. He tells the bewildered Frank that the woman was following them and is 'one of them'. Frank empties the woman's purse and finds no such evidence that she's corrupt before ordering Marvin to let her go. They continue to the cargo hold where they find Singer and inquire about the Guatemala mission. Under pressure, Singer takes them to the privacy of a traffic control tower and tells them that the purpose of their mission was to extract a person of interest from the village and erase all evidence of his involvement there. Before he can say anything else, Marvin notices a helicopter with a particular identification number on the side; the same helicopter he'd seen outside his house. Frank passes this off as a part of Marvin's paranoia until the helicopter opens fire with an on-board machine gun, killing Singer and destroying the tower.
The trio manages to escape and takes refuge among large containers bound for shipment. They are attacked by multiple assassins, & Marvin gives Frank his Pig which turns out to house a folded grenade launcher. The woman Marvin accosted earlier takes aim with a rocket launcher and Marvin takes his revenge, accurately firing a bullet into the oncoming rocket causing a premature explosion. They continue to fight their way out of the terminal before Cooper and his men can kill them. Frank determines that they need more information and must infiltrate the CIA itself to obtain it. Marvin slanders this as a suicide mission but Frank knows where to go to get some help. This news doesn't improve Marvin's morale.
They drive to the Russian Federation Headquarters which Frank enters alone. He is escorted to a large room where he meets Ivan Simanov (Brian Cox
), an old secret agent whose cousin Frank had once killed. They share some vodka and Frank reveals, to Ivan's amusement, that his cousin is still alive, owns a string of 7-11's, and weighs 500 pounds. Ivan laments that he is bored and hasn't killed anyone in years. He agrees to help Frank and gives him the necessary tools to infiltrate the CIA in Langley on condition that Frank perform a favor for him upon success. Frank and Sarah enter the CIA with their fake IDs and are nearly caught when Frank's contact lense (with false optics for an eye scanner) falls out. They find their way down to the records room where Henry recognizes Frank and eagerly gives him the file on Guatemala. He tells Frank that Cooper was down in the room looking for information on him the other day. Frank sends Sarah off to wait for him while he goes to confront Cooper in his office. The two fight fiercely, both getting injured in the process. Frank asserts that he is far better skilled than Cooper and that he won't back down easily before escaping, but not before getting shot. He reunites with Sarah and they set up a booby trap in a chemical closet to explode, using the distraction to start a fire alarm and slip out with the evacuating crowd. Frank steals a fireman's helmet and jacket to escape and he and Sarah return to Marvin who has taken an ambulance.
Inside, they find Joe, alive and well and eager to join the team. Joe reveals that he faked his death after an assassin arrived at the retirement home to kill him. However, the assassin was caught off guard by Joe's preparedness; Joe killed him with a hidden gun and silencer.
Meanwhile, Cooper recuperates in his office from his scuffle with Frank. His superior, Cynthia Wilkes of the CIA (Rebecca Pidgeon
) berates him for having had his ass handed to him by a retiree.
The team drives to the home of Victoria (Helen Mirren
), a fellow wetwork retiree. Frank enters the home alone and finds her assembling flowers in her living room. She greets Frank as an old friend and immediately takes note of his wounds. She agrees to help him, given that Marvin will stand down 'before he hurts himself'; we see that he is right outside her window, hidden in a bush and aiming a rifle at her. As she stitches Frank up, she admits that she too misses the old life and even takes the odd job on the side every once in a while. She is thrilled to meet Sarah and, with the others, goes over all the information they've found up until that point.
After a review, the team figures out that there is one man included on the deceased reporter's list but was not in the Guatemala file taken from the CIA records department. Alexander Dunning (Richard Dreyfuss
) lives secluded in his large mansion and invites Joe inside, disguised as an African dictator in needs of weaponry, escorted by Marvin and Frank as his bodyguards. Dunning, under audio surveillance by the FBI due to his history of arms merchandising, activates a prerecorded speech about his services before leading them into a sound-proof study. Sarah and Victoria wait outside, hidden in the woods and keeping watch with a sniper rifle. Victoria tells Sarah that she's never seen Frank so happy and, if Sarah breaks his heart, she will kill her and hide her body in the woods. Victoria tells Sarah that she was in love once with a fellow agent but that their relationship wasn't 'sanctioned'. When Victoria's loyalty was brought into question, she was ordered to kill her lover...so she put three bullets into his chest.
Frank, Joe, and Marvin reveal themselves to Dunning and secure him in one of his chairs. Dunning reveals, under threat of torture, that the person extracted out of the village in Guatemala was none other than Vice President Robert Stanton (Julian McMahon
) who had been a lieutenant at the time. Apparently, he had suffered a breakdown and went AWOL, killing everyone in the village. Now that he's running for president, he's ordered hits on everyone who was involved in cleaning up his mess in order to tie up loose ends, using the CIA as his personal hit squad. At that moment, the recording in the house begins to skip and the surveillance team outside sends the order to surround the house. Victoria relays this message via radio to Frank. He realizes that there's no clean way out of the house and Joe proposes a plan, one that will sacrifice himself but ensure the escape of the others. Cooper, following his own leads, arrives on scene and calls in to negotiate the peaceful surrender of Frank, who responds that he is simply uncovering a scandal involving the coverup of the vice president's treachery. This news shakes Cooper's faith in his mission, but he remains firm in his demands. Frank agrees to come out while Cooper orders his men to hold their fire.
Frank walks out into view in a trench coat and hat. No sooner does he cross the threshold of the home, he is shot down by an unseen sniper. Cooper run to the body, followed closely by Victoria's sights, and discovers that 'Frank' is really Joe in disguise. Victoria then fires on Cooper, intentionally missing, giving enough time to Frank and Marvin to escape out a side door and into the woods. However, Sarah trips on an incline and Victoria is forced to leave her behind to be captured.
Frank resolves to save Sarah and calls Cooper directly to tell him that they all must protect the things they love. Cooper orders a trace on the call and is horrified to find out that Frank is calling from his own home, watching his wife and children (Jake Goodman
and Tess Goodman
) play outside. Frank tells him that he will rip his family from him and then kill him if anything happens to Sarah. Cooper promises to keep her safe. Frank confesses his plan to kill the vice president for his past misdeeds and for ordering the hits on them before hanging up. A squad is rushed to Cooper's house and, when he arrives, finds them perfectly safe. On a table inside, he sees that Frank left him the Guatemala file and the CIA ID he'd previously stolen from Cooper.
The team regroup and Ivan joins the fray. He relates the turmoils of love to Frank and reveals that the love of his life shot him three times in the chest to save them both; that when he woke up alive, he knew she still loved him. They formulate a plan to get Sarah back and to expose the vice president for what he did. The go to Chicago where he is hosting a fundraiser. It's a black tie event and security is high but the team manages to gain access with minimal effort. Victoria attends the gala in an elegant gown while Marvin sneaks in as a waiter. Stanton arrives and addresses the attendees with thanks and the formal announcement that he is to run for president, asking them to give him their monetary consideration for his campaign. The music plays and people begin to dance. Ivan approaches Victoria and invites her to dance with him as he confesses his love for her. Victoria plays it off, trying to keep cool and, as the dance ends, hands Ivan a spray canister from her purse. Ivan walks away, spraying the smelly contents of the canister throughout the room.
Victoria leaves the ballroom and uses her heavy necklace to chain the twin doors shut behind her from the outside. At that moment, Ivan begins shouting that he smells gas, causing a panic and the evacuation of the VP. With the main doors locked (courtesy of Victoria) the secret service is forced to move Stanton through an alternate exit into the parking garage. They load Stanton into a limo but come quickly under machine gun fire by Victoria and Marvin. When they attempt to load Stanton into a backup limo, Ivan emerges from an elevator on cue and detonates a bomb, destroying the second limo. Cooper, meanwhile, catches up to the secret service and cuts through the gunfire towards the machine gun. He finds the station empty; the gun is being fired automatically by a leverage system. He pulls the cord, allowing the secret service to move Stanton back inside through another ext. They run through the kitchens but are confronted by Victoria and Marvin once again, who continue to fire at them. The secret service return fire and Victoria is wounded in the hip. She and Marvin try to escape but, in pain, Victoria is unable to move fast enough and she insists that he move on by himself. She runs to the end of the kitchen where the exit is blocked off by a grate. Unable to open it, she backs into it and prepares herself for her fate as the secret service agents draw closer. Ivan appears behind her and opens the gate before taking her in his arms and carrying her away. She tells him she loves him.
Meanwhile, Stanton is escorted out of the building and into another limo. Cooper chases after them and demands that the limo stop, but Stanton orders the driver to keep driving. The driver is actually Frank. He turns around and tasers his passengers, leaving the secret service agents on the side of the road and taking Stanton hostage. He contacts Cooper and arranges a trade: Stanton for Sarah.
At the designated spot the next day, Cooper arrives with Cynthia and Sarah as Frank brings Stanton. However, to everyone's surprise, Dunning arrives as well and explains that he is actually the mastermind behind all the hits and has been working closely with the CIA and Cynthia to ensure that gets done; he's been using Cooper and the CIA to kill all the loose ends while Stanton is simply a pawn. Stanton, tired of everything, expresses his contempt only to be shot down by Dunning who intends to place the blame of the VP's death on Frank. He orders Cooper to handcuff Frank but Cooper, in an act of faith, does so and places the key in Frank's hand. He then faces Cynthia and shoots her down as Frank strolls towards Dunning and crushes his windpipe. Dunning's bodyguards, before they have time to react, are gunned down by the hiding Victoria, Ivan, and Marvin. Cooper, realizing the scale of the scandal, agrees to take care of the mess and promises to let Frank go. He and Frank shake hands. Marvin satisfies his paranoid tendencies by shooting Dunning in the head. He then asks if they want to get some pancakes.
Driving out together, Ivan reminds Frank that he owes him a favor; a minor, nuclear thing in Moldova. Sarah asks if they can go and Frank agrees before kissing her.
The final scene shows Frank wheeling Marvin, dressed as a woman and with a stolen nuclear warhead in his lap, in a wheelbarrow somewhere in the fields of Moldova being chased by the Moldovan army. Marvin asks Frank why his girlfriend couldn't be the one to wear the dress as mortars explode around them.