Filmen handlar om den trettonåriga flickan Ofelia, som tillsammans med sin mamma flyttar upp i bergen där hennes man, falangistkaptenen Vidal, deltar i bekämpandet av den lokala kommunistiska motståndsrörelsen. Handlingen utspelar sig i maj–juni 1944, under Franco-regimens förföljelse av de kvarvarande motståndarna från spanska inbördeskriget.
Medan striderna fortgår upptäcker Ofelia en igenvuxen labyrint i närheten av deras bostad. Där möter hon labyrintens väktare, en faun (se originaltitelns El laberinto del fauno) från den romerska mytologin. Det är, enligt del Toro, inte alls den grekiska mytologins herdegud Pan – vilket man kan förledas att tro av filmens svenska eller engelska titel.[3]
Faunen påstår att Ofelia är den underjordiska kungens bortkomna dotter, fast i en annan skepnad, och för att bekräfta detta utsätts hon för tre farliga uppdrag.