主角大衛·杜恩(布魯斯·威利斯 飾)得到了超能力,已經成爲一名義警。在兒子約瑟夫的幫助下,大衛開始追捕凱文·溫德爾·克魯伯(詹姆斯·麥卡沃伊 飾),凱文擁有24個不同的人格,而其中「野獸」這一人格因進化具有最強的戰鬥力。在解救了被凱文綁架的女大學生後,大衛和兒子都被斯泰普醫生控制。同樣被抓到斯泰普醫生的研究所的,還有玻璃先生——以利亞(塞繆爾·傑克遜 飾)。玻璃先生曾經是一個犯罪團伙的主腦,他的身體非常虛弱,哪怕是輕輕一拍都會骨折。玻璃先生發現了大衛的超能力,他相信超級英雄漫畫中的故事都是真實的。甚至爲了證明他所堅信的超級英雄的存在,不擇手段,精心布局。在研究所,醫生試圖給這三個男人洗腦,他們都擁有極度妄想,他們難以置信的能力可以用科學和巧合來解釋。在醫生的母親和曾經被凱文綁架的受害者的幫助下,約瑟夫發現醫生的真實身份並不簡單。與此同時,玻璃先生以利亞精心策劃做局,教唆凱文和大衛公開打一架,以便錄像取證,這樣他便打成了目的,可以向世界證明,超級英雄是真的存在的。