Victoria 'Vicky' Page (Moira Shearer) is a young, unknown dancer from an aristocratic background. At an after-ballet party, arranged by her aunt as a surreptitious audition, she meets Boris Lermontov (Anton Walbrook), the ruthless but charismatic impresario of the Ballet Lermontov. Lermontov takes her on as a student, where she is taught by, among others, Grisha Ljubov (Léonide Massine), the company's chief choreographer.
After seeing her dance in a matinee performance of Swan Lake, Lermontov realises her potential and invites Vicky to go with the company to Paris and Monte Carlo. When he loses his prima ballerina (Ludmilla Tchérina) to marriage, Lermontov begins to see Vicky as a possible successor. He decides to create a starring role for her in a new ballet, The Red Shoes, the music for which is to be written by Julian Craster (Marius Goring) a brilliant young composer engaged as orchestral coach the same day that Vicky was brought into the company.
As the premiere of the ballet approaches, Vicky and Julian lock horns artistically, and then fall in love. The ballet is a great success, and Lermontov talks with Vicky about her future. Lermontov revitalizes the company's repertoire with Vicky in the lead roles, with Julian composing some of the most successful scores.
The tale turns toward tragedy when Lermontov begins to have personal feelings toward Vicky. Lermontov's suppressed jealousy clouds his aesthetic discrimination: he rejects Julian's latest composition as childish and vulgar, which Julian (and the viewer) knows to be untrue. Lermontov fires Julian, and Vicky decides to leave the company with him. They marry and live in London where Julian works on composing a new opera. Lermontov relents his decision to enforce Vicky's contract, and permits her to dance where and when she pleases. The one exception is The Red Shoes; Lermontov retains the rights to the ballet and ownership of Julian's music, and refuses to mount it again or allow anyone else to produce the ballet.
Some time later, while joining her aunt for a holiday in Monte Carlo, Vicky is visited on the train by Lermontov, who convinces her to return to the company to dance in a revival of The Red Shoes. On opening night, as she is preparing to perform, Julian appears in her dressing room; he has left the premiere of his opera at Covent Garden to take her back with him. Lermontov arrives, and he and Julian contend for Vicky's affections. Torn between her love for Julian and her need to dance, she cannot decide what to do. Julian, realising that he has lost her, leaves for the railway station, and Lermontov consoles her, urging her to dance.
While being escorted to the stage by her dresser, and wearing the red shoes, Vicky is suddenly seized by an irresistible impulse and runs out of the theatre. Julian, on the platform of the train station, sees her and runs helplessly towards her. Vicky jumps from a balcony and falls in front of an approaching train.
Shaken by the events and broken in spirit, Lermontov appears before the audience to announce that "Miss Page is unable to dance tonight – nor indeed any other night." As a mark of respect, the company performs The Red Shoes with a spotlight on the empty space where Vicky would have been.
While lying close to death on a stretcher, bloody and battered, she asks Julian to remove the red shoes, just as in the end of The Red Shoes ballet.
The film contains a possible inconsistency in the story: At the end of the film, when she jumps off the balcony and is killed, Vicky is wearing the same red shoes she wears in the ballet. We see her wearing them as she is preparing in her dressing room for the opening of the revival of The Red Shoes, before the confrontation between Julian and Lermontov, despite the fact that in the performance her character does not put them on until part way through the ballet. This problem was discussed by Powell and Pressburger themselves and has been much discussed since. Powell decided that it was artistically "right" for Vicky to be wearing the red shoes at that point because if she is not wearing them, it takes away the ambiguity over why she died: did the shoes drive her to it, did she fall or did she jump?