Nina (Natalie Portman) er en ballerina ved New York-balletten. Livet hennes dreier seg utelukkende om dans. Hun bor sammen med moren, en tidligere ballerina, som utøver en kvelende kontroll over datteren. Med sin tekniske briljans er Nina førstevalget når regissøren av den kommende oppsetningen av Svanesjøen, Thomas Leroy (Vincent Cassel), bestemmer seg for å bytte ut prima ballerina Beth MacIntyre. Men Nina har en konkurrent - den nye danseren Lily (Mila Kunis), som tross sin noe svakere teknikk imponerer Leroy. Svanesjøen krever nemlig en danser som kan spille både den hvite svanen, uskyldig og elegant, og den sensuelle, listige sorte svanen. Nina passer perfekt som den hvite svanen, mens Lily er personifiseringen av den sorte motparten.
Etter hvert som de to rivaliserende danserne utvikler et merkelig vennskap, blir Nina stadig bedre kjent sine mørke sider - med konsekvenser som står i fare for å ødelegge henne som både danser og menneske.