When a group of strangers at a dusty roadside diner come under attack by demonic forces, their only chance for survival lies with an archangel named Michael, who informs a pregnant waitress that her unborn child is humanity's last hope.
An out-of-the-way diner becomes the unlikely battleground for the survival of the human race. When God loses faith in humankind, he sends his legion of angels to bring on the Apocalypse. Humanity's only hope lies in a group of strangers trapped in a desert diner with the Archangel Michael (Bettany).
God loses faith in mankind and orders Angel Michael in addition to a legion of other angels to bring the Apocalypse to Earth and exterminate the human race. However, Michael rebels against the order and decides to help the humans. Meanwhile in a diner in the middle of nowhere, Bob Hanson, runs the place with his son Jeep, a pregnant waitress, Charlie, and his friend Percy Walker. Their customers, the Anderson family, are stranded until Jeep can fix their BMW and lonely Kyle Williams who is lost.
- The film begins with a quote from the Bible, something about fearing God before a sunset sky fades in and we hear a voice over by Charlie (Adrianne Palicki) telling the audience about what her mother used to say about God, and how he was ever loving and forgiving, but eventually got tired of all of humanity's bullshit and became an angry, vengeful God. It is now nighttime, and we see a man fall from very high, landing in a back alley somewhere in Los Angeles.
The fallen man is the Angel Michael (Paul Bettany). Soon after arrival, Michael takes out a large knife and cuts off his own wings, causing a blue halo to close around him, and removing a large metal collar from around his neck: he is presumably mortal now, and no longer taking orders from Heaven. Recovering a bit, Michael looks across the street at a Chinese toy import warehouse, and heads toward it.
Inside, a security guard (Stephen Oyoung) is patrolling the premises when Michael crashes through the glass ceiling, knocking him out, and stealing his clothes. Inside the warehouse's bathroom, Michael grabs a med kit and stitches up the wounds from where his wings were removed. Upon finishing up, he finds what he was looking for in the warehouse, a shipping container crammed full of guns (apparently toys were not the only thing this company was shipping). He begins to grab several guns off the walls and walks out of the container with two large duffel bags. He then looks at a door in front of him.
Two cops are on patrol in their squad car and discuss how bad things have gotten, and older of the two says that he sometimes wished that he could just torch the place and let it start over, and that this city is about to explode from all the crime and evil but before he can continue, there is a massive explosion in front of them and out comes Michael from the warehouse, carrying the two large duffel bags of firearms. The cops try to arrest him, but he gets one of them in an arm lock, while pointing a gun at the other. Suddenly, the lights flickering on and off, and the cop pointing the gun at Michael starts to shake violently. Once the cop stops shaking, he has noticeably different black eyes, and possessing a mouth full of pointy shark-like teeth. The possessed man shoots the other cop, asks what Michael is doing, as his intervention on Earth is violating his orders. Michael says that he is following his own orders now, shoots the possessed cop, grabs his bags of guns, and drives off in the squad car. As Michael leaves, darkness surrounds the city the apocalypse has begun.
Cut to the Mojave Desert, the camera pans to a small desert diner/gas station where a bunch of locals work, including Charlie, an unwed single mother (well, pregnant) working as a waitress. Charlie speaks to one of her coworkers/friend, Jeep (Lucas Black), and it's evident that he has feelings for her, and wants to take care of her and the baby, even though she doesn't seem to return his affections. Inside the diner, Jeep's father Bob Hanson (Dennis Quaid) is trying to fix an old 60s era TV by slapping at it with varying degrees of success while the chef, Percy Walker (Charles S. Dutton) teases him about getting a new one. A married couple, Howard and Sandra Anderson (John Tenney and Kate Walsh) and their daughter Audrey (Willa Holland) are stuck at the diner, waiting for their car to be fixed. Sandra complains to Howard about their daughters clothing (too scantily clad) and it's evident that Howard is the relaxed type, Sandra is a bit uptight, and Audrey is the rebellious teenager.
At the diner Sandra is complaining from how long the repairs are taking, and gets Howard to talk to Bob. Bob tells him that it shouldn't be long, and goes to check on his son. In the garage, Bob finds Jeep cleaning up an old crib instead of fixing the car and reprimands him for it. Jeep says that he knows that Charlie doesn't love him, but believes that taking care of her and the baby is something that he just has to do. Bob tells Jeep that he once had a dream to do something too, and opening this gas station/diner in hopes of profiting when a mall was to be opened across the road. However, the plans were scrapped and Bob was left with a business out in the middle of nowhere, and his wife left him and Jeep to fend for themselves. It's clear that Bob loves his son, and doesn't want him to chase a dream only to realize too late that it's a dead end, but he eventually relents, and tells Jeep to just finish work on the car.
Out in the desert, a man by the name of Kyle Williams (Tyrese Gibson) is driving along the interstate, but has become lost, and ends up at the diner. There, he meets Charlie, making small talk and getting a cigarette off of her. A few moments later, they go inside and Charlie gets back to work while Kyle looks for a phone since his cell phone has stopped working. Kyle gets on the phone with his ex-wife and they are apparently in a custody battle over his son, which is why Kyle is in such a hurry. However, before he can say more, the phone stops working. Jeep enters the diner as well to tell Bob that the car he was supposed to work on is too advanced, that there's something wrong with the computer system, and they don't have the equipment to fix it. Jeep suggests having the car towed to the next town over, but Kyle returns from the phone and says that he was cut off mid-sentence and that the phones are now dead. Around this time, the TV stops working too. After a bit of hitting, the TV jumps to the emergency broadcast signal (the THIS IS NOT A TEST, along with a loud beeping tone). Percy tries the radio, but gets the same signal. Bob tries his best to calm everyone down, and says that it's probably just an earthquake nearby that's causing all the problems.
A few moments later, a car stops at the front, and out comes a little old lady (Kaye Wade) on a walker. The old woman enters the diner and is greeted by Charlie, and orders a nearly raw steak. Charlie returns with the steak and the old lady asks her about her baby. After a few more questions, the woman says that the baby will burn, and that they will all burn. When Sandra confronts the woman, she just yells at her and how all she does is complain. Howard, taking offence to this, confronts the old woman as well, but before he is able to say much, the woman lunges at him and takes a bite right out of the side of his neck, leaving him to bleed out on the floor. The old woman transforms (black eyes, sharp teeth) and Percy throws a frying pan right at her head, knocking her out. However, the woman gets back up and crawls right up the ceiling. Bob grabs his rifle and tries to shoot her, but she's too fast, and knocks him out. Jeep grabs the fallen shotgun and tries to shoot her, but just can't bring himself to do it. The possessed woman is about to lunge at Jeep, but is brought down by several gun shots not from Jeep, but from Kyle, who was carrying a handgun.
After a bit of frantic talk about demons and monsters, and their inability to call for help, they decide to put Howard in the one remaining car and drive him to the next town for help. Howard, Sandra, Audrey, Percy and Kyle get into the car and head out, while Bob and Jeep are left to decide on what to do with the corpse.
As they drive, Audrey notices a strange cloud in the distance, but Kyle just brushes it off as a storm or something. However, the cloud seems to be moving, and becomes evident that it's not a cloud, but a massive swarm of flies. The flies surge towards the car and start to get in through the air conditioning vents and begin to fill up the car. Back at the diner, Bob and Jeep hear a car approach and go outside to see the others returning and running back into the dinner to avoid the flies.
Having no other choice, the group decides to stay put until they can call for help. Bob and Jeep wrap up the possessed woman's corpse and take her outside. Bob spots a police cruiser out in the distance and greets it gladly, thinking that help as finally arrived, except that it isn't a cop, but Michael. Realizing that it's not a cop, Bob points his gun at Michael and demands to see his teeth. Michael complies, and grabs the gun from Bob and points it at him. Before things can escalate any further, Michael senses something, and gives the gun back to Bob, then arms everyone else with the guns that he had brought from LA. He tells them that they are coming.
Inside the diner, he says that they will be here soon, and that they must defend themselves. Michael gives Charlie a gun too, and tells her not to do anything heroic.
As the sun sets, the men head up to the roof to watch for any incoming help/attackers. Soon, they hear a sound from the distance, and it's an ice cream truck. The ice cream man (Doug Jones) gets out of the truck and is obviously possessed, but the people in the diner aren't sure. Suddenly, the ice cream man's arms and legs lengthen grotesquely and he lets off an inhuman scream before charging at the diner. Michael takes aim and guns it down, and tells the others that more are coming.
And a few moments later, a large number of cars come over the horizon, all filled with possessed people. As the cars approach, Michael orders the others to fire, and they comply, causing many cars to swerve crash and explode. Even with all the men firing down at the incoming army of possessed, many more are coming from the other direction of road. Michael whips out a rocket launcher and take out a large number of them, along with a truck carrying large pipes, blocking the roads a bit. Michael yells to the others to keep the possessed from reaching the diner, but there are just too many of them. Downstairs, Audrey, Sandra, Charlie and Howard and hiding among the diner's tables, but one of the possessed crashes through the window and grabs Howard, attempting to drag him out. Charlie tries to help Sandra and Audrey, but she is almost taken herself by one of the possessed until Michael slices off the man's hand and fights them off with a lot of bullets.
The first wave is over, but Howard was taken.
Everyone is scared and confused until Michael reveals that he is there to protect Charlie and her unborn child, and that the possessed that attacked them were not demons, but angels sent by God. Michael tells them that the key to humanity's survival is Charlie's baby, and they must protect her until the child is born. Charlie says that the child is not supposed to be born yet, but realizes that it will happen soon anyway (the current date in the film is December 24).
The survivors go off to deal with the situation in their own way: Bob makes some food and cracks into a beer, offering one to a grieving Sandra. Audrey is also grieving for her father, quietly sobbing in the corner. Percy and Kyle are on the rooftop discussing why Kyle was carrying a gun and Kyle replies that he's had a rough childhood, and has carried a gun since then, implying that he's done some criminal activities, but never actually fired it before that morning. Percy replies by telling him a story about his father, and how before each night, he should contemplate whether he is proud of the things he's done, and if he isn't, then he should get right on it.
Down in the basement, Jeep and Michael are working to fortify the Diner, and Jeep asks Michael why he is helping them, especially if it means violating heaven's orders. Michael tells Jeep that when God first made man, he was the first to bow down before them, because, like God, he loved humanity. And even though God has given up on them, Michael has not. Michael has a quick flashback to his time in Heaven he speaks with Gabriel (Kevin Durand) about God's decision to eradicate humanity and start over. Michael openly challenges the decision, and claims that it is what God wants, but not what he needs. Gabriel, who has chosen to follow God's directives without question confronts Michael, telling him that he cannot go against the will of God and his army of Angels. Gabriel says that the order has been given, and up in the sky, a massive swarm of Angels fly in formation towards Earth. The flash back ends and Michael tells Jeep that he still has hope in humanity, even through all the atrocities that humanity has inflicted upon itself, because of people like Jeep, who do not give up in spite of the challenges ahead, and love unconditionally. Michael leaves Jeep to think about what he said.
As morning approaches, Sandra wakes up and hears her husband's voice. She follows the voice to the window at the rear office and sees that Howard is still alive, tied upside down to a cross. Sandra pushes the barricade aside to get to her husband, even as Audrey and Percy try to stop her. She makes it outside and it appears that Howard has large pulsing boils all over his body and is about to explode. Percy grabs Sandra just in time and pushes her back into the diner, but is covered in spray from the exploding Howard. The others arrive at the office to watch as Percy falls to the grown dead, having had his entire back side melted off by some kind of acid.
The others tie Sandra to a chair until she can calm down while Audrey gives her a pill to help her calm down. Sandra blames Audrey for the mess they are in, since they were moving to another town for Audrey. Audrey is devastated, but copes with it.
The morning passes by quickly with nothing much really happening until sundown. Suddenly, all the lights and power come back to the diner, and everyone wonders if things are better, but Michael assures them that it's not over. They hear over the radio (it's working now) that some survivors have banded together to fight the infected (possessed) and have made a small settlement nearby. The group wants to leave, but Gabriel says that it's not safe.
Up on the roof, Kyle and Audrey are on watch, and Kyle teaches Audrey how to fire a gun. Audrey already knows how though, as she dated a marine mostly to anger her parents. She's the rebellious type, and has been acting out for most of her childhood, mostly to get attention from her parents. Kyle can relate, as it was pretty much what he did as a child too. They share a few more moments reminiscing about their childhoods before Kyle notices a van approach the gas station. Thinking that is filled with more possessed people, Kyle aims his gun at it, but soon realizes that it's a survivor of the apocalypse, and his son. The man is just trying to get some gas, but is soon surrounded by the possessed.
The man (Denney Pierce) doesn't see them coming until Kyle fires into the air to alert him, but it's too late, the man is killed by a car driven by the possessed and the child (Cameron Harlow) is taken. Kyle, thinking of his own son jumps down and attempts to save him. However, the child was possessed as well, and bites into Kyle's neck, killing him. Audrey sees this and charges towards Kyle to save him, killing several of the possessed along the way, but running out of ammo as she reaches Kyle and manages to protect herself by locking herself inside a minivan. Inside the diner, Bob wants to go save Kyle and Audrey, but is threaten with death by Michael, who cannot risk them opening the door and letting in the possessed. Charlie confronts Michael and says that if he doesn't do something, she will. Having no choice, Michael arms up, and orders them to open the door just long enough to let him inside. Michael gets outside and takes down many of the possessed, then sprays gasoline on the rest and sets them on fire and saving Audrey. However, the possessed have now turned their attention on the diner and try to get in. After a bit of a gun fight, all the possessed are killed or frightened off, except for one, the child that Kyle tried to save. The possessed child attacks Charlie and almost succeeds, but she fights him off with a dinner tray until Michael can dispose of him. However, the fight with the child triggered caused Charlie's water to break, and her child will be born soon.
Audrey is given the task of helping with the childbirth while everyone else watches out for more attackers. The outside is now completely surrounded by the possessed, but they aren't attacking. As the child is born, it starts crying, which appears to cause great pain to the possessed. A moment later, a massive bellowing horn is heard, and Michael says that they have to leave. The others protest, but Michael tells them that since the child has been born, none of the possessed can even approach him, but because of this, something more powerful is coming to claim the child, Gabriel (hence the horn).
The survivors are packing up to leave and Sandra and Audrey reconciles their differences, however, Sandra believes that all the possessed want is the child, and decides to give them what they want so that she and Audrey can leave. Sandra grabs the child and heads for the door, while Michael aiming his gun at her head, demanding for her to stop. Just then, another horn blast his heard and the door behind Sandra glows white. The door slams open and Gabriel is standing right behind her. Having no choice, Michael shoots Sandra, causing her to drop the baby, but Jeep is close enough to catch him. Jeep and the baby get out of the way just in time as Gabriel swings at them with a huge iron mace. Bob attempts to shoot at Gabriel, but Gabriel spins around and blocks the shots with his wings (which appear to have the consistency of metal). As Bob runs out of ammo, Gabriel extends a wing and slices into his stomach, and throwing Bob into the kitchen.
Michael tells everyone to leave out back, but he stays to hold back Gabriel, instructing Jeep to learn to read the instructions, and find the prophets to Jeep's confusion, but there's no time to talk.
Michael confronts Gabriel and asks him not to continue, to let the child live. Gabriel has already made up his mind, and will never disobey. It is evident that neither wants to fight the other, but they have no choice but to fight until one dies. Michael shoots at Gabriel while Gabriel takes swings at Michael with his mace and wings . Michael is injured by Gabriel's wing but manages to put him in a headlock. However, Gabriel apologizes to Michael, and then stabs himself through the chest with a spike from his mace, which impales Michael as well. Gabriel is technically still immortal, while Michael has become mortal from cutting his wings, and so Michael dies. Gabriel tells him that since he loves humanity so much, he will die like them. As Michael dies, he glows blue and burns up/disappears at the same time, the same tattoo-like marking that were on Michael's body, appears on Jeep (the instructions he mentioned earlier). Gabriel turns and prepares to pursue the others, but walks past Bob, who is still alive, and has disconnected the gas pipes and is now attempting to light them. Before Gabriel can fly away, Bob ignites the gas, causing a massive explosion.
Out on the road, Jeep, Charlie, the child, and Audrey are on their way towards one of the colony of survivors mentioned on the radio earlier. As they get closer to the colony, things seem to be going right at last, but a slightly singed Gabriel crashes onto the roof of the car, still trying to get to the child. After much struggling, Audrey is able to hold back Gabriel, and tells Jeep to hit the break, which he does, throwing both Audrey and Gabriel out of the car, and crashing the car as well. A moment later, Jeep is awoken by Charlie, who survived the crash, along with the baby. However, Audrey was killed, and Gabriel is missing.
The remaining three head towards the mountain range where the survivors are supposed to be, but as they climb up the mountain, Gabriel shows up again. Jeep is able to grab onto Gabriel, pushing them both off a cliff, with Gabriel breaking Jeep's fall. Gabriel doesn't want to kill Jeep, but sees that there's no choice, and pulls out his knife. Just then, a resurrected Michael comes down from heaven (back in Angel form) and fights off Gabriel. Michael tells Gabriel that he was brought back because he did the right thing, that he gave God what he needed, and not what he wanted. Since he no longer has purpose (God rescinded the order), Gabriel leaves. Michael returns to Heaven as well, bidding Jeep good luck. Jeep returns to Charlie and the baby, and they head towards to settlement below.
Charlie repeats her voiceover from the beginning, and we see Charlie, Jeep, and the baby in their car, driving off into the distance, with the back of the car full of guns.