The film is set during the UK miners' strike (1984–1985), and centres on the life of Billy (Jamie Bell), his love of dance, and his hope to become a professional ballet dancer. Billy's father (Gary Lewis) and older brother Tony (Jamie Draven) are both out on strike. Billy's mother is no longer alive and Billy's and Tony's invalid Nan (Jean Heywood) lives with the family.
Billy is taken to the boxing gym by his father, but he finds out that he does not really like the sport. Part of the boxing gym is used by a ballet class because their usual studio in the basement of the sports centre is being used as a soup kitchen for the striking miners. He is drawn in by the ballet teacher (Julie Walters), and with her help, secretly starts taking ballet lessons. Billy's father finds out after the boxing teacher makes comment of Billy's absence. Billy is then forbidden to dance but continues secretly because he is becoming passionate about it.
As a consequence of Tony's arrest during a confrontation between police and striking miners, Billy misses an important audition for the Royal Ballet School. His ballet teacher goes to their house to tell his father about the missed opportunity. Billy's father and brother, fearing that Billy will be seen as a "poof," become outraged at the idea of him becoming a professional ballet dancer.
Once having accidentally seen Billy dance, however, his father realises that his son is truly gifted and is willing to do whatever it takes to help him realise his dream. He attempts to cross the picket line to pay for Billy's training, but is stopped by his older son. Instead, his fellow miners and the neighbourhood raise money for Billy. His father takes Billy to London himself to audition for the Royal Ballet School. Billy is accepted to the Royal Ballet, and leaves home at age 11 to attend the school.
The film ends with a scene that takes place fourteen years later (approximately 1999), when Billy has finally reached his goal through dancing: the older Billy (dancer/actor Adam Cooper) takes the stage to perform the lead in Matthew Bourne's Swan Lake as his father and brother watch in the audience.