故事发生在1836年,德克萨斯的军事堡垒阿拉莫遭到了独裁者安东尼奥(埃米利洛·艾切瓦利亚 Emilio Echevarría 饰)带领的精锐部队的攻击,这也就意味着,驻守在阿拉莫的两百名平民,必须要面对数千名装备精良的专业士兵。这是一场根本就不可能胜利的战争。
在这命悬一线的紧要关头,威廉少尉(帕特里克·威尔森 Patrick Wilson 饰)、詹姆斯(杰森·帕特里克 Jason Patric 饰)和西部牛仔大卫(比利·鲍伯·松顿 Billy Bob Thornton 饰)勇敢的站了出来,领导着其他来自各行各业的勇士们和敌人展开了殊死搏斗。十三天后,阿拉莫尸横遍野,然而,勇士们所争取到的时间使得萨姆将军(丹尼斯·奎德 Dennis Quaid 饰)得以领兵赶往此处,并且最终击退了墨西哥军队。
警官约翰·荷伯斯(丹泽尔·华盛顿 Denzel Washington 饰)新近逮捕了一名杀人犯里斯,此人除了在电刑前说了几句奇怪的语言跟留下了一则暗语,并无特别之处。然而荷伯斯很快发现里斯的暗语指向一名三十年前自杀的警察罗伯·米拉诺。与此同时,几起连锁杀人案接连发生,凶手的手段如出一辙,更令人惊异的是每次的受害者即是上一桩凶案的嫌凶。荷伯斯拜访了罗伯之女格瑞坦,对方劝诫荷伯斯放弃调查。里斯的留言终被破译,原来他用叙利亚的古语言向荷伯斯发出威胁,而荷伯斯的坚持有了进一步的收获,他发现罗伯与近期几宗凶案的死者可能皆出自名为“阿萨索”的恶灵之手,阿萨索可以随意依附人体作恶,荷伯斯的缉凶之路因此而困难重重。这场人与恶灵之战,究竟如何收场?