A seven-year-old boy goes to live with his Norwegian grandmother after his parents are killed in a car crash. The grandmother is a wonderful story teller. He loved all the stories, but he was enthralled by the ones about witches, which she says are horrific creatures who seek to kill human children. She tells the boy that she knows of five children who were cursed by witches and tells him how to recognise them. She also tells about witchophiles, who hunt witches, which she is retired from, telling of an encounter with a witch which cost the grandmother her left thumb, but otherwise said her witchophile career was a failure as she never killed another witch. While witches look and act like human women, they are actually "demons in human shape." They have bald heads that they hide with wigs, clawed hands that they usually hide with gloves and toeless feet that make it extremely painful to wear pretty shoes.
Per the parents' will, the boy and his grandmother have to return to England, where he was born and was in school, and where the house he is inheriting is located. The grandmother warns the boy to be on his guard, however, since English witches are known to be among the cruelest in the world. They are particularly notorious for turning children into loathsome creatures so that unsuspecting adults kill them. As the boy asks more questions, the grandmother reveals that witches in different countries have different customs; and that while the witches in each country have close affiliations with one another, they are not allowed to communicate with witches from other countries. She warns him to beware of the Grand High Witch, the feared and diabolical leader of all of the world's witches, who each year visits their councils in every country.
Shortly after arriving back in England, while the boy is working on the roof of the treehouse he has been building, the boy sees a strange woman in black staring up at him with an eerie smile, and he realizes that she is a witch. When the witch offers him a snake to entice him, he climbs further up the tree and stays there, not daring to come down until his grandmother comes looking for him. This persuades the boy and his grandmother to be especially wary; and he carefully scrutinizes all women to determine whether or not they might be witches.
When the grandmother later becomes ill with pneumonia, the doctor orders her to cancel a planned holiday in Norway. Instead, they go to a luxury hotel in Bournemouth on the southern English coast. The boy goes to train his pet mice in the hotel ballroom when the members of the Royal Society for the Prevention of Cruelty to Children show up for their annual meeting. The boy quickly realizes that this is really the yearly gathering of England's witches when one of them reaches underneath her hair to scratch at her scalp with a gloved hand. A young woman goes on stage and removes her mask, revealing herself to be the Grand High Witch. After scolding the English witches for their lack of progress in eliminating the children, incinerating one of them when she talked back about her demands for the death of every English child within a year, the Grand High Witch unveils a master plan. All of England's witches are to purchase sweet shops (with "homemade" money printed from her money-making machine) and give away free sweets and chocolates for the grand opening laced with her latest creation, "Formula 86 delay action mouse maker", a magic potion meant to turn the drinker into a mouse at a specific time with a single drop. The intent is that the children's teachers can kill the transformed children for them. To demonstrate, the Grand High Witch turns a gluttonous child named Bruno Jenkins, who is lured to the convention hall by the promise of free chocolate, into a mouse. Shortly after, the witches smell the narrator's presence and corner him. The Grand High Witch then pours an entire bottle of Formula 86 down the narrator's throat, instantly turning him into a mouse.
The transformed child retains his sentience, personality and even his voice. After tracking down Bruno, the transformed boy returns to his grandmother's hotel room and tells her what he has learned. He suggests turning the tables on the witches by slipping the potion into their food. With some difficulty, he manages to get his hands on a bottle of the potion from the Grand High Witch's room. After a failed attempt to return Bruno to his parents, the grandmother takes Bruno and the narrator to the dining hall, then he sneaks towards the kitchen, holding the potion. He spies the witches coming in to dinner on his way and finally enters the kitchen successfully, where he pours the potion into the green pea soup intended for the witches' dinner. On the way back from the kitchen, a cook spots the narrator and chops off part of his tail with a carving knife. He crawled up a cook's pants in a panic and the cook tried to catch him by removing his pants, but he crawled out and eventually returned to grandmother. The witches all turn into mice within a few minutes, having had massive overdoses. The hotel staff and the guests all panic and, unknowingly, the staff end up killing the Grand High Witch and all of England's witches.
Having returned home, the boy and his grandmother then devise a plan to get rid of the world of witches. Learning the location of the Grand High Witch's Norwegian castle, they will travel there and use the potion to change her successor and assistants into mice, then release cats to destroy them before they escape. Using the Grand High Witch's money-making machine and information on all the other witches in various countries, they will then try to track down and eradicate them all over the world. The grandmother also reveals that as a mouse, the boy will probably only live about another nine years, but the boy does not mind as he does not want to live any longer than his grandmother, and in the end they can both die together.