In April 1994, tensions between the Hutu and Tutsi peoples lead to a genocide in Rwanda, where corruption and bribes between politicians are routine. Paul Rusesabagina, manager of the Hôtel des Mille Collines, is Hutu, but his wife Tatiana, is Tutsi. Their marriage is a source of friction with Hutu extremists, including Georges Rutaganda, a goods supplier to the hotel who is also the local leader of Interahamwe, a brutal Hutu militia.
As the political situation in the country worsens following the assassination of the president, Paul and his family observe neighbors being killed, initiating the early stages of the genocide. Paul curries favour with people of influence, bribing them with money and alcohol, seeking to maintain sufficient influence to keep his family safe. When civil war erupts and a Rwandan Army officer threatens Paul and his neighbours, Paul barely negotiates their safety and brings them to the hotel. Upon returning with them, he finds his receptionist Gregoire occupying the Presidential suite threatening to rat them out if he is put back to work.
More evacuees arrive at the hotel from the overburdened UN refugee camp, the Red Cross, and various orphanages, among which Tatiana desperately searches for her brother, sister-in-law, and two nieces. As the situation becomes more violent, Paul must divert the Hutu soldiers, care for the refugees, be a source of strength for his family, and maintain the appearance of a functioning hotel. He eventually gains the protection of Rwandan army general Augustin Bizimungu, who threatens Gregoire back to work.
Low on supplies, Paul and Gregoire drive to collect hotel supplies from Georges Rutaganda and witnesses Tutsi hostages being treated violently by the Hutu militia. Georges explains to Paul that the “rich cockroaches'” money is going to be valueless because all of the Tutsis will be dead. Paul expresses disbelief that the Hutu extremists will wipe out all of the Tutsis, but Georges replies: “Why not? We are halfway there already.”
They return to the hotel through the dark and thick fog, on a road that Georges recommends. At one point, Paul believes they have gone off the road and tells Gregoire to stop. When Paul exits the vehicle, he sees the riverside road is full of bodies and realises that Georges was correct in his estimation that half the Tutsis are already dead.
The UN peacekeeping forces, led by Canadian Colonel Oliver, are unable to take assertive action against the Interahamwe because the peacekeepers are forbidden to intervene in the conflict and prevent the genocide. The foreign nationals are evacuated, but the Rwandans are left behind. When the UN forces attempt to evacuate a group of refugees, including Paul’s family, Gregoire betrays them by informing the Interahamwe of the evacuation, and they are ambushed and forced to turn back.
In a last-ditch effort to save the refugees, Paul pleads with General Bizimungu for assistance. However, when Paul’s bribes no longer work, he blackmails the general with threats of him being tried as a war criminal if he doesn’t help. Soon afterward, Paul’s family and the hotel refugees are finally able to leave the besieged hotel in a UN convoy. They travel through retreating masses of refugees and militia to reach safety behind Tutsi rebel lines, and are reunited with their nieces.
The end title cards explain that Paul saved at least 1,200 Tutsi and Hutu refugees. He and his family, who adopted the two nieces, moved to Belgium, but Tatiana’s brother Thomas and his wife were never found. The genocide came to an end in July 1994 when the Tutsi rebels drove the Hutu militia and the Interahamwe across the border into the Congo. At least one million people died in the genocide.