At his son's wedding party, Edward Bloom (Albert Finney) tells the same tale he's told many times over the years: on the day Will (Billy Crudup) was born, he was out catching an enormous uncatchable fish, using his wedding ring as bait. Will is annoyed, explaining to his wife Joséphine (Marion Cotillard) that because his father never told the straight truth about anything, he felt unable to trust him. He is troubled to think that he might have a similarly difficult relationship with his future children. Will's relationship with his father becomes so strained that they do not talk for three years. But when his father's health starts to fail, Will and the now pregnant Joséphine return to Alabama. On the plane, Will recalls his father's tale of how he braved a swamp as a child after he was dared by a few other children. He meets a witch (Helena Bonham Carter). She shows Don Price and another boy how they were going to die. They run away, frightened. When the witch shows Edward his death in her glass eye, he accepts it without fear. With this knowledge, Edward knew there were no odds he could not face.
Edward continues telling tall tales, claiming he spent three years confined to a bed as a child because his body was growing too fast. He became a successful athlete, but found the town of Ashton too small for his ambition, and set off with the misunderstood giant Karl (Matthew McGrory). The witch with the glass eye is seen bidding him farewell. While traveling, Edward and Karl see two separate roads out of Ashton. Edward suggest they each take one way. He'll take the old dirt road and Karl should the new paved road. They will meet on the other side. Karl feared that Edward was attempting to abandon him, but Edward gives him his backpack to prove that he isn't. After walking through a scary swamp, Edward discovers the hidden town of Spectre, where everyone is friendly to the point of comfortably walking around barefoot. Their shoes can be seen hanging from a wire near the entrance. When he enters the town he is greeted by the Mayor and his wife. The Mayor has a clipboard that says Edward was meant to be in their town but he had arrived early. He also tells him of the poet Norther Winslow (Steve Buscemi) who was also from Ashton. While there Edward has an encounter with a mermaid. She swims away before he could see her face. Edward leaves because he does not want to settle anywhere yet, but promises to the town mayor's daughter Jenny (Hailey Anne Nelson), who developed a crush on him, that he will return. He believed that he was fated to be there someday.
Edward meet up with Karl. They attend the Calloway Circus where Edward falls in love at first sight with a mysterious woman. Together, Karl and Edward begin working at the circus. Karl meets his destiny by working as the giant man, replacing the old one who is much smaller than him. Edward works without pay, as he has been promised by the ringmaster Amos Calloway (Danny DeVito), who claims to know the mysterious woman, that each month he will learn something new about the mysterious woman. Three years later, having only learned trivia about her, Edward discovers Amos is a werewolf. In return for his refusal to harm him in his monstrous state, Amos tells Edward the girl's name is Sandra Templeton (Alison Lohman) and she studies at Auburn University.
Edward goes to Sandra to confess his love. He learns Sandra is engaged to Don Price (David Denman), whom Edward always overshadowed during his days in Ashton. Sandra refuses Edward's proposal but that does not discourage Edward. He writes, 'I love Sandra' everywhere he could. Don arrived to challenge Edward to a fight over Sandra. Sandra makes Edward promise not to fight Don. Edward allows Don to beat him up. Sandra, disgusted by Don's violence, ends their engagement and falls for Edward. Edward later reveals that Don died from a heart attack on the toilet bowl at an early age (as Don saw in the Witch's eye). During his recovery, Edward is conscripted by the army and sent to the Korean War. He parachutes into the middle of a show entertaining North Korean troops, steals important documents, and convinces Siamese twin dancers Ping (Ada Tai) and Jing (Arlene Tai) to help him get back to the United States, where he will make them stars. He is unable to contact anyone on his journey home, and the military declares him dead. This limits Edward's job options when he does return home, so he becomes a traveling salesman. Meeting the poet Norther Winslow (Steve Buscemi) from Spectre again, he unwittingly helps him rob a bank, which is already bankrupt. Edward explains this to Winslow, who then decides that he will work at Wall Street. Winslow later thanks Edward for his 'advice' by sending him $10,000, which he uses to buy his family a dream house.
Still unimpressed by his father's stories, Will demands to know the truth, but Edward explains that is who he is: a storyteller. Will finds Spectre, and meets an older Jenny (Helena Bonham Carter), who explains that Edward rescued the town from bankruptcy by buying it at an auction and rebuilding it with financial help from many of his previous acquaintances. Will suggests his father had been having an affair with Jenny, to which she replies that while she had indeed fallen in love with him, Edward could never love any woman other than Sandra. When Will returns home, he is informed his father had a stroke and is at the hospital. He goes to visit him there and finds him only partly conscious, and unable to speak at length. Since Edward can no longer tell stories, he asks Will to tell him the story of how it all ends: escaping from the hospital, they go to the river where everyone in Edward's life appears to bid him goodbye. Will carries his father into the river where he becomes what he always had been: a very big fish. Edward then dies, knowing his son finally understands his love of storytelling.
At Edward's funeral, Amos, Karl, Norther Winslow and Ping and Jing arrive, making Edward's stories real. Will finally realizes the truth of his father's life for which his stories were embellishments. When his own son is born, Will passes on his father's stories, remarking that his father became his stories, allowing him to live forever.