Danny Muldoon (John Candy) is a 38 year old Chicago cop, who lives with his mother Rose (Maureen O'Hara). Rose is a mean spirited domineering mother. For example, when a friend gets tickets to a Cubs game, Danny can not go because every Weds he takes his mother to bingo. Danny sees Theresa Luna (Ally Sheedy) and is immediately attracted to her. They begin dating. Theresa works in her father's funeral home, and is extremely shy and quiet.
Rose does everything possible to get in the way. Danny sets up a nice dinner at an elegant restaurant for Rose to formally meet Theresa. Rose refuses to order anything from the menu, because it is all to expensive. Rose ridicules Theresa's dress and physical appearance. When Rose learns Theresa is half Polish, Rose goes off on how stupid Polish ladies are. Theresa storms out of the restaurant and breaks up with Danny.
Eventually, Danny wins her back. They get engaged to be married. The night before the wedding, Theresa is upset because Danny had to break off from her to call home and check that Rose got home fine. The church is packed for the wedding, but Theresa and Danny both do not show up.
There is a subplot about Danny's wealthy younger brother. The brother takes advantage of Danny, and Danny is always responsible for Rose. The brother wants Danny and Rose to move to Florida to live in an investment condo that he is buying. Danny does not want to go, but the brother pushes it for selfish reasons. The brother also tries to get in the way of Danny's romance with Theresa, since the brother wants Rose to stay living with Danny as Danny's problem.
At the last minute, Danny refuses to go and sends Rose off to Florida without him. All through the film their elderly next door neighbor Nick (Anthony Quinn) has been after Rose, since both are widowed. Danny gives his ticket to Nick, and Nick flies down to FL with Rose.
Danny goes to the funeral home and they tell him Theresa has left to take the train to New York. He catches up to her on the train, and tells her that he has sent Rose off to Florida. They board the train to go to NY together.