Henry Moores (Linus Roache) has dreams of creating a spice plantation in colonial India in 1937. He is an Englishman who enjoys asserting his power over others and thereby increasing his own prestige and reputation. Henry takes out a loan from the bank to build a road through the mountains to the site of the planned plantation. To secure the help and trust of the poor local villagers, he calls upon the assistance of his right-hand man, T. K. Neelan (Rahul Bose), an ambitious young man who has been educated in the West. A great believer in progress and modernization, he brightens up when he learns from his boss that the road will be named after him. Although T.K.'s old teacher is leading demonstrations against British rule, he does not join him in this nationalist movement.

A sign that Henry is obsessed with dominating others is his love affair with Sajani (Nandita Das), his attractive housemaid who lives with her abusive husband (Lal Paul) in an arranged marriage that isn't working. While Henryu's wife (Jennifer Ehle) and young son are away in England, he sneaks away with Sajani to collect honey in the forest. Some local boys see them in the bushes, and their secret is out. Threatened with death in her village, Sajani remains convinced that Henry will stand by his declaration of love for her. T.K. is put in a very uncomfortable position; he's known her since childhood and and also feels loyal to Henry.

Before the Rains is directed by Santosh Sivan and based on a screenplay by the late Cathy Rabin. The film graphically depicts the dire effects of one man's intoxication with power on all those around him. Henry unleashes a series of catastrophic events that bring suffering and misery into the lives of Sajani, T.K., his wife, and son. Our hearts go out to T.K. who finds himself caught between the anger of the villagers and the betrayals of Henry. In the midst of this struggle, the young Indian makes a decision that might just give him the freedom and dignity that he so desperately longs for.