In the beginning, Ruth Wilcox (Vanessa Redgrave) unexpectedly leaves her estate, Howards End, to her dear friend Margaret Schlegel (Emma Thompson) instead of her family. Her husband, Henry (Anthony Hopkins), burns her letter stating this intention in order to keep Howards End in the family. Specifically, he wants to pass Howards End on to his son, Charles, even though he will not appreciate it.
Over the course of the film Henry falls in love with Margaret, marries her, and is made to pay for his deception. Following a series of events, it is decided that Howards End will be passed to Margaret, just as Ruth Wilcox had originally wished.
It is revealed that Margaret's sister, Helen (Helena Bonham Carter), has been impregnated by Leonard Bast (Samuel West), an idealistic but poor man the Schlegel sisters had tried -- with disastrous results -- to help move up in society. Helen asks to spend the night in Howards End, where all of the Schlegel's belongings have been unpacked by mistake. Henry, honoring his previous deal with his children to keep the Schlegels out of Howards End, refuses to allow this. Margaret doesn't understand his refusal and the two have it out. Margaret leaves Henry and spends the night with Helen at Howards End without his blessing. Charles, whose paranoia that Margaret is attempting to seize Howards End has been building, arrives in the morning to cast them out when Leonard Bast shows up out of the blue. In a fit of rage, Charles slaps Leonard several times with the flat of a sword and accidentally topples a bookcase on top of him. Leonard, who had been seeking news of Helen, dies of a heart attack.
It is concluded at the inquest that Leonard's heart attack was brought on by Charles' attack, and Charles is convicted of manslaughter and sent to prison for three years. Margaret and Henry make up and decide to remain married.
One year later, we see the Wilcox family unanimously agreeing that Howards End should be given to Margaret in the event of Henry's death while Helen plays with her son outside. Charles' wife states that they are relinquishing their claim to the house because they will have to move far away once Charles is out of prison thanks to the shame he has brought upon them. She also accidentally makes reference to Ruth Wilcox's will.
After Henry's children leave, Margaret asks him about the significance of Ruth's will. Henry confesses his deception to Margaret and supposes that things have resolved themselves to the way they were supposed to be in the end.