Andre Linoge is a demon and he wants a child to continue his work. Mike Anderson's son Ralphie is chosen. Years later, Mike sees a grown-up Ralphie, but his son doesn't recognize him and is now a demon himself.
The community of Little Tall Island, Maine is in the midst of the worst winter storm to hit the area in nearly 100 years. All communications are cut off from the mainland and there is no way on or off the island until the storm passes. But a stranger named Andre Linoge (Colm Feore) is able to get on the island and he promptly murders an elderly resident with his wolf's head cane. He is arrested by the town's constable Mike Anderson (Tim Daly) and transported to jail, which is in the back of the general store he runs. Because the door to the jail is broken, Mike is forced to transport Linoge through the busy store. Linoge sees several people and stops and tells them intimate details of their personal life that they wanted to keep secret, such as drug use, abortions, and so on. Linoge also sees Mike's young son Ralphie and takes an interest in him. This angers Mike and he quickly puts him in the cell. Because he can't watch him alone, Mike recruits several townsfolk to help watch the prisoner.
Using a supernatural ability to manipulate dreams, Linoge gets several of the recruits and other townspeople to either commit suicide or kill others. All the while, Linoge repeats over and over, "Give me what I want and I'll go away." This phrase shows up repeatedly at crime scenes and in the dreams of the townspeople. Linoge eventually escapes from his cell and continues his reign of terror over the townspeople. When all of the town's children, including Ralphie, are put into a trance by the wolf's head cane, the townspeople are ready to give Linoge what he wants. The town manager calls an emergency town hall meeting and it's there that Linoge reveals everything.
Andre Linoge is a demon, but he is not immortal. He is actually very old (but appears to be young) and he knows that his time is nearing an end. He wants to take one of the children to be his protege and eventually take over the business. He cannot just take a child; the town has to willingly give one up to him. If they don't, he will kill all of the children and make the townspeople walk into the ocean and drown, just like what he did at the Roanoke colony back in the 16th century (a.k.a. The Lost Colony). He specifically chose Little Tall Island because he knows that island people are known for keeping secrets. He allows the townspeople 30 minutes to decide what they want to do. Mike appeals to everyone to not take the offer because it would be aiding the Devil, but the town ignores him and everyone, including Mike's wife Molly, votes to accept Linoge's offer.
A parent of each of the children are to pull a rock out of a bag, and whoever pulls out the black rock must give up their child. Molly pulls the black rock, and Linoge takes Ralphie and together they fly off into the sky as the storm is ending and the children wake up. Several months later, Mike has quit his job and is leaving Little Tall Island forever. He has filed for divorce, blaming Molly for his son's disappearance, and makes it clear he has no love lost for his former friends. He has moved to San Francisco and is now a US Marshal. He learns from his former deputy, who eventually married Molly, that the townspeople constantly live with regret for what they did, and some of them have killed themselves rather than live with the guilt. One day several years later, Mike sees Linoge and a teenage boy walking by. He realizes that it's Ralphie, but the boy doesn't recognize him. He also reveals that he is now a demon himself.
The movie ends with Mike giving chase, but the two of them disappear down an alleyway.