The film begins with Alice (Milla Jovovich) recalling the key events from the first film, with some being shown almost as though through flashback. On September 29, thirteen hours after the initial t-Virus outbreak in The Hive, the Umbrella Corporation sends in a research team to re-open the complex. As the team enters The Hive through a secret insertion point beneath Raccoon City, the entire team is slaughtered by zombies and lickers who have been sealed within the complex. Realizing the entrance is now open, and the virus and infectious zombies will make their way to the surface, Umbrella establishes a security perimeter around the city to keep the citizens in a quarantined area.
Alice wakes up in a downtown hospital, and recalls her recent memories. After surviving The Hive, Alice was recovered by Umbrella and used for experimentation. She has gained superhuman powers because the t-Virus bonded with her blood on a cellular level. As she exits the hospital, she recognizes the virus has escaped causing devastation in the streets and makes her way to a police car where she grabs a shotgun from the front seat. She pumps the shotgun once and moves on.
As civilians reach the checkpoints, Umbrella operatives screen them for traces of any t-Virus infection, until Major Timothy Cain (Thomas Kretschmann), orders all checkpoints to be closed, as the t-Virus infection already reached the gates, and then he informs the remaining citizens to return to their homes. No one responds to the order, and the military threatens them after hoaxing a shoot-out.
Elsewhere, Carlos Olivera (Oded Fehr) and two other Umbrella soldiers Nicholai Ginovaef (Zack Ward) and Yuri Loginova link up with multiple Special Tactics And Rescue Service units in an attempt to hold against an onslaught of zombies in the street. However they are overrun, causing Carlos and his team to fall back with an infected Yuri who was bitten during the battle. Jill Valentine (Sienna Guillory) (a S.T.A.R.S. unit member) together with Terri Morales (Sandrine Holt) and Peyton Wells (Razaaq Adoti) retreat to a church, where they are attacked by Lickers before being saved by Alice. In the church it is revealed that Terri Morales is recording their encounters with the zombies and other monsters in case they survive the outbreak.
When the t-Virus infection reached critical stages, Umbrella dispatched their Nemesis program (Matthew G. Taylor) to kill all remaining S.T.A.R.S. operatives, and when he encounters L.J. (Mike Epps), and thirteen other members of S.T.A.R.S, they open fire on him, before he guns them down, sparing only L.J.'s life when he drops his weapons. Dr. Charles Ashford (Jared Harris), a key Umbrella scientist and creator of the t-Virus, has refused extraction by Umbrella until he has located and rescued his daughter Angela (Sophie Vavasseur). As he hacks into Raccoon City's network of closed circuit cameras, he determines she is hiding out in her school and contacts Alice and her group. He informs them that Umbrella's method of sanitizing Raccoon City is by nuking it, but he offers to arrange for an evacuation in exchange for rescuing Angela. Inside the school, the group encounter Carlos and his team, who have also been given the same offer. After various encounters with zombie dogs and infected children who kill Nicholai and Terri respectively (Terri's video camera records her death), they succeed in finding Angela, leaving the remaining survivors to escape by car and head towards the extraction point. Alice records her story with Terri's video camera as they travel to the extraction point.
When contacted by Alice about their success, Ashford gives them the location of the extraction point, and tells them that "it is lightly guarded." After subduing all of the guards, Alice and the other survivors are confronted by Major Cain. Cain had been aware of Ashford's plan, captured him, and finally kills him, forcing Alice to fight Nemesis for her friends' safety. As she defeats Nemesis in hand-to-hand combat, she realizes his true identity (her former friend, Matt Addison) and refuses to deliver the killing blow. Her mercy appears to rekindle a trace of Nemesis's former humanity, and they join forces and attack the Umbrella troops. Nemesis is killed in the ensuing fight, and Alice and the others escape in the helicopter, Major Cain attempts to board the helicopter but Alice throws him off. Major Cain picks up a pistol and fires it into the rapidly growing crowd of approaching zombies several times, then tries to kill himself with the pistol, only to find that it is out of bullets. He is eaten alive by the rest of the zombies (with, ironically, the reanimated Dr. Ashford being the first to get to him).
On September 30, The N-2 Missile flies above Raccoon City, reaching the towers, and then obliterates the whole city. The helicopter is caught in the blast radius, the shock wave dislodging a piece of metal that hurtles towards Angela. Alice leaps in front of her and is impaled by it. The helicopter then crashes into the Arklay Mountains. Alice is recovered by Umbrella, but the rest of the occupants escape before the crash site is located. Terri's video is recovered and released, and flashes of news scenes appear. At first the scenes show a public suspicious of Umbrella, but it is soon revealed that Umbrella hushed up the incident, saying it was nothing more than a sick joke playing on the accident at Raccoon City. Umbrella explains the nuclear explosion on a failed reactor, and by the end of the series of news clips, Terri's video seems to have been regarded as a hoax, and those featured in it are called in by the police for questioning.
Alice is taken to an Umbrella research station, where after several weeks, a mysterious voice telling Alice to wake up. Alice awakens in a water tank, completely regenerated from her injuries. Led by Umbrella scientist Dr. Isaacs (Iain Glen), the doctors query her. At first, she appears to have no memory, but soon a rapid series of images of recent events come flashing back, and she says with contempt "My name is Alice… and I remember everything." She fights her way out of the facility showing some of her darkest powers yet, only to be surrounded by dozens of armed guards. Suddenly, Jill, Carlos and L.J., disguised as Umbrella employees, pull up in an SUV. Carlos shows the guards a written order placing Alice in his custody. The guards stand down, and as Alice enters the waiting vehicle she sees Angela in the back seat. Angela asks Alice if she is alright, to which Alice gives a brief nod. Then, as they drive away, Jill asks her what they - meaning the Umbrella Corporation - did to her, to which Alice doesn't respond. Dr. Isaacs is shown announcing "Program Alice Activated," and a close-up of Alice's eye reveals a flashing Umbrella logo. Together with Carlos Olivera, Jill Valentine, Angela Ashford and L.J. Wade, Alice's face gazes out of the SUV window one last time. And as the film comes to an end, we see the automobile depart, its destination unknown.