在童年時代便消滅了糖果屋女巫的孤兒兄妹韓賽爾(傑瑞米·雷納 Jeremy Renner 飾)與格蕾特(傑瑪·阿特登 Gemma Arterton 飾),多年來成爲邪惡女巫的最大克星。在幫助小鎮奧古斯伯格尋找失蹤的孩子以及隱藏女巫之時,兄妹二人發現三天後即將出現「血月」(月蝕),這對女巫們來說是無比重要和神聖的時刻。兩兄妹迅速投入行動,而討厭他們倆的警長也招來一伙人馬追查女巫們的行蹤。未過多久,女巫頭目(法米克·詹森 Famke Janssen 飾)率領手下襲擊小鎮,與兄妹二人展開正面衝突。激戰過後,格蕾特遭到重創,韓賽爾也隨著女巫消失下落不明。
正邪的較量漸次升級,兄妹倆在這一過程中也漸漸知曉關於他們童年以及父母背後的祕密……