Jaiprakash Paswan a.k.a. Jai (Kamal Haasan) and Janki Paswan (Tabu) are fighting a divorce case. Janki is the only daughter of Durgaprasad Bhardwaj (Amrish Puri), a staunch Brahmin businessman. Jaiprakash, a Dusadh, is an assistant dance director in films. The duo fall in love and married against the will of Durgaprasad. However, Janki buckles under the pressure of a middle-class life. Other differences crop up between the couple and Janki walks out. The court grants the divorce. Jai is allowed to meet his beloved daughter Bharti (Baby Sana) once a week. But when he sneaks into the Bhardwaj house to steal Bharti, he loses visitation rights.
Meanwhile, Durgaprasad puts ads in local newspapers for a nanny for Bharti. Jai sees this as an opportunity and calls Durgaprasad. Impersonating a female, he introduces himself as 'Mrs. Lakshmi Godbole' and applies for the position. With the help of a drunkard makeup artist Joseph (Johnny Walker in his last and memorable role), Jai undergoes a complete transformation into Lakshmi Godbole, a dignified elderly Marathi woman. He goes to the interview, where he is generally viewed as the last pick. But Bharti has an accident, and Lakshmi acts promptly to give first aid. Lakshmi gets the job and the respect of the Bhardwaj family.
Jai begins the job, but creates plausible stories so that his real work schedule does not clash with the job in Bhardwaj's home. Apart from Joseph, only Bharti (who sees through her father's disguise) knows the real identity of Lakshmi. Jai learns that Durgaprasad's secretary Banwari Lal (Om Puri) is not exactly thrilled at Laxmi's entry. The reasons are various, such as Banwari's womanizing nature (which naturally views an old woman like Lakshmi with dislike) and his desire to siphon off Durgaprasad's money via friendly maids.
Meanwhile, Durgaprasad decides to get Janki remarried to Dr. Rohit (Rajendranath Zutshi), her childhood friend. One day, when Janki and Rohit get attacked by goons in the market, the doctor scampers. Lakshmi saves Janki's life and modesty. Later, Durgaprasad tells Lakshmi that he has changed his mind about the marriage on learning of Rohit's cowardice. Lakshmi also exposes the thefts committed by the maid in the Bhardwaj house. The maid is fired. Banwari has no other option but to let a male cook be appointed instead. Jai runs into his old friend Shiraz (Nassar), a Muslim restaurant chef who is now doing menial jobs as he lost his job trying to help Jai. Laxmi introduces Shiraz to the Bhardwaj household as Pandit Shivraj Sharma, a mute Brahmin cook. Interestingly, even Shiraz does not know that Lakshmi and Jai are the same person.
Jai learns that although Janki likes Lakshmi, who by now has earned the affectionate title of Chachi (a respected aunt), she still loathes Jai. Meanwhile, Jai has other problems in his own home. His landlord Hari (Paresh Rawal) is after him for his rent. After he sees Lakshmi, Hari falls for her. As if that is not enough, a struggler named Ratna (Ayesha Julka) tries to cozy up to Jai. Meanwhile, Durgaprasad also falls for Lakshmi and goes to the extent of proposing to her.
Jai, as Lakshmi, buys time by telling Durgaprasad that 'she' is married but 'her' husband has left 'her' and got converted into a Christian named Joseph. Lakshmi also convinces Durgaprasad that 'she' is still waiting for 'her' husband. On the other hand, Jai tells Hari that Banwari is Lakshmi's husband Durgaprasad. He also tells Hari to harbour no feelings for Lakshmi. At same time, Jai tells Banwari that Lakshmi's husband has converted and calls himself Haribhai.
Banwari intensifies his efforts to discredit Lakshmi in the eyes of Durgaprasad and Janki but in vain. Meanwhile, Janki and Durgaprasad realize that they have punished Jai too hard for all the things he has done. Banwari gets a small victory when he blows Shiraz's cover. But Lakshmi makes Durgaprasad see sense that religion and caste do not matter. Durgaprasad shows mercy on Shiraz, giving a verdict that the cook can stay and need not put up his act anymore. However, now Durgaprasad ends up hurting Janki's feelings.
Banwari and Janki see that there is something fishy about Lakshmi. Meanwhile, Shiraz tries to force Lakshmi to marry Durgaprasad. Shiraz threatens 'her' by covering himself in kerosene, which forces Jai to reveal himself. But, owing to a misunderstanding about this scene, Banwari is able to convince Janki that Lakshmi is a promiscuous woman who is seducing the cook as well as Durgaprasad. Janki, who is very hurt by the turn of events, leaves her father's home and goes to reconcile with Jai. But on seeing Ratna waiting for him, and Lakshmi's clothes strewn about his home, Janki gets the wrong idea that her husband is also promiscuous. Janki goes to commit suicide. Jai/Lakshmi follows on a motorcycle and jumps into the river to save her. There, Jai/Lakshmi reveals his/'her' true self. Janki hears the whole story and reconciles with him. They come up with a story that Lakshmi died trying to save Janki.
To tie up other loose ends, they convince Banwari that Lakshmi is dead. They threaten and blackmail Banwari with his secrets to ensure his silence. They tell Hari to let it go. Joseph almost accidentally betrays some part of the truth, but Jai hushes up the matter by saying that Lakshmi will always remain alive in the hearts of everybody who knew her. Jai and Janaki remarry.Kamal Haasan – Jaiprakash Paswan/Lakshmi GodboleTabu – JankiAmrish Puri – Durgaprasad BhardwajFatima Sana Shaikh – Bharti RatanOm Puri – Banwari Lal PanditJohnny Walker – Joseph (as Johny Walker)Paresh Rawal – Hari Lal GodsaleNassar – Shiraz Akhtar / Pandit Shivraj SharmaAyesha Jhulka – RatnaRajendranath Zutshi – Dr. RohitAtul Agnihotri -as himself in a song
The soundtrack of the film composed by Vishal Bhardwaj, consisting of five tracks was released on 19 December 1997.
In 1997, Kamal initially chose noted adfilm maker Shantanu Sheorey to direct the Hindi remake of Avvai Shanmughi, titled Chachi 420. But unhappy with the complaints after five days of shoot and after checking the actual result, he took over as director.
Box Office India certified the film as a 'Hit' as it netted ₹11.42 crore (US$1.8 million) from North indian region.