City of God starts with a road accident and the story traces the life of the four families who are associated with the accident. Each family has a different perspective on the city of Cochin.
The first story revolves around the life of Tamil migrants. One of the them, Swarnavel (Indrajith Sukumaran), has a special affection towards another migrant, Marathakam (Parvathi Menon). Marathakam was already married but she had run away from her old husband in Pollachi due to his unbearable torture. Marathakam and Swarnavel know that they love each other, but they don't show it. Because of some personal benefits, Lakshmi (Rohini) breaks their relationship and forces Marathakam to marry another migrant. But on the night of the marriage, Marathakam learns that her new husband is a thief and returns to Swarnavel. They realize that the love is mutual and start living together. The second husband, stricken with envy, takes revenge by bringing the first husband (a rowdy) from Pollachi. The following day, Swarnavel rescues Marathakam from her old husband and tries to escape on a moped; they have an accident.
The next story deals with the life of businessmen Sony (Rajeev Pillai) and his forehand Jyothi Lal (Prithviraj Sukumaran). As per the instructions of Sony, Jyothi Lal and his gang kill a plot owner, who is the husband of Liji Punnose (Swetha Menon). Liji Punnosse identifies her husband's murderer as Jyothi Lal and associates with another businessman, Shamir, plot revenge and destroy Sony and Jyothi Lal. Liji promises to marry Shamir if he can kill Jyothi Lal and Sony by arranging it with another gang.
Sony has an eye on the growing actress Surya Prabha (Rima Kallingal). Surya is leading an unpleasant married life with Mehaboob, who is a friend and later business partner of Sony. Sony, with the intention of collecting Surya Prabha, cheats Mehaboob in the construction business; the police remand Mehaboob for the inadequate and unsafe construction practices which had caused the death of the Tamil migrant Lakshmi. Sony forces Surya to have an illicit relation to get the papers that prove her husband's innocence. Jyothi Lal rescues Surya from this predicament. Later in the story, he rescues her from a suicide attempt. Jyothi Lal takes Surya to Sony's guest house to collect the papers and they pick up Sony on the way. However, their vehicle is in the same accident which Swarnavel and Marathakam had. Sony dies at the scene of the accident.
The gang arranged by Shamir and Liji Punnoose arrives at the accident and tries to kill Jyothi Lal, too. Jyothi Lal escapes with Surya and they began to realise the importance of each other in their future life. Liji marries Shamir and goes to Dubai for further business.
In the final scene, Swarnavel and Marathakam marry each other and settle in a scenic village, living happily ever after.