In den dunkelsten Zeiten des Mittelalters, schaffte es Hexenjäger Kaulder (Vin Diesel) die Hexenkönigin (Julie Engelbrecht) zu töten, die die gesamte Welt ins Verderben stürzen wollte und auch seine Familie auf dem Gewissen hat. Da er sich nichts sehnlicher wünschte als wieder mit seiner Frau und Tochter vereint zu sein, verfluchte die Königin ihn mit ewigem Leben.
800 Jahre später leben Hexen noch immer im Verborgenen unter uns, sie haben jedoch geschworen, Magie nie gegen Menschen zu verwenden. Kaulder arbeitet für eine geheime Organisation, die für Recht und Ordnung in der Welt des Übernatürlichen sorgt. Als der aktuelle Vertraute (Michael Caine) des Hexenjägers, durch Magie ermordet wird, beginnt er mit seinen Nachforschungen. Dabei ist Kaulder auf die Hilfe der Hexe Chloe (Rose Leslie) angewiesen, doch können Jäger und Beute überhaupt ihre Differenzen überwinden und zusammen arbeiten?