在加利福尼亞州舊金山,一名神秘的殺手在樓頂上使用高精度狙擊步槍殺死了在對面棟頂樓游泳池戲水的一名女孩。當警方到達犯罪現場後,SFPD重案組督察哈利卡拉漢發現了殺手留有一封署名「天蠍」的勒索信;對方表示,如果該市不支付他10萬美元的話,他將繼續暗殺其他市民。這使市長找來卡拉漢及布萊斯勒共同討論對策。
在午餐時間,卡拉漢開槍阻止了一場銀行搶案。他殺死了兩名搶匪和打傷了一名黑人搶匪;面對受傷的黑人搶匪,卡拉漢發現他打算將一旁的槍拿起反擊,但卡拉漢則對他說出自己的觀點:我知道你在想什麼:「他開了六槍還是五槍?」說實話,我太興奮到早就忘了。但這是世上最厲害的手槍.44麥格農,能把你的腦袋打飛,你應該問自己一個問題:「我感到幸運嗎?」你覺得呢,痞子?黑人搶匪投降後,他告訴卡拉漢他必須知道.44麥格農裡是否還有子彈。卡拉漢用槍指著他並按下扳機,結果因沒有子彈而笑了起來。
儘管成功阻止搶案,但卡拉漢的右腳受了傷並在醫院中度過短暫的時間,但他仍打算繼續處理天蠍的案子。他被布萊斯勒分配了一名新的警察合作夥伴齊科岡薩雷斯,他認為岡薩雷斯是個沒有經驗的新手。另一方面,天蠍不滿意市長在報上表示需要時間來籌錢,因此在公園附近的頂樓上尋找下一個目標,但卻被警用直升機發現,使他被迫放棄並逃跑。卡拉漢和他的新搭檔岡薩雷斯在晚上於街上開車時,岡薩雷斯似乎看見了一名神似犯人的人,使得卡拉漢跟蹤他到一所住處中,卡拉漢從一扇窗中看著對方和一名女性打算發生性行為,但卻被鄰居認為他是在偷窺湯姆和他女友瑪莉而打了他,直到岡薩雷斯出面阻止。之後,兩人又阻止了一場跳樓案。
根據天蠍的訊息,他決定接下來要殺死城市中的一名天主教神父。使得卡拉漢和岡薩雷斯在挑好埋伏點後,便在教堂另一邊的屋頂上觀察,以拿下天蠍。卡拉漢在觀察時,再次因一名房間中的裸女而分心。當天蠍現身時,雙方展開了一場槍戰,最後天蠍成功逃走並殺死了一名偽裝成牧師的警察。
天蠍向警方提出了第二次贖金要求,稱自己現在綁架了一名十幾歲的女孩,如果他的要求沒有得到滿足,那名女孩在明晚就會死。卡拉漢被分配到向對方提供充滿贖金的任務,且岡薩雷斯這時才知道為何卡拉漢會被稱作「骯髒哈利」,因為警方什麼麻煩事都會推給他來做。卡拉漢帶著錢在晚間於碼頭附近等候時,到附近的公共電話得知了天蠍的指示,對方要求他用另外一個公用電話去城市的另一個地方,以確保他是一個人來。卡拉漢在整個城市四處遊走後,在戴維森山除了遇見想成為強盜的年輕人外,他還在該處的大型十字架下遭蒙面的天蠍襲擊。一直在跟蹤他們的岡薩雷斯前來與對方展開槍戰,最後中彈受傷;未拿好錢的天蠍則因腳被卡拉漢刺傷而急忙逃走,並到一家醫院治療。
警方得知了天蠍療傷的醫院後,一名醫生回憶說自己先前曾遇到過天蠍,記得他住在基澤體育場的一個房間裡,他也在那工作。在岡薩雷斯住院後,卡拉漢和同事迪喬吉歐前往該體育場,並在那裡找到了天蠍。在體育場的一場追逐中,卡拉漢最先射傷了天蠍,並站在天蠍受傷的腳上折磨他,以要求天蠍說出被囚禁女孩的位置。這名女孩後來被發現死在附近的一口井中。
事後,地方檢察官威廉T羅斯科告訴卡拉漢說,他的私刑行徑侵犯了天蠍的人權,加上卡拉漢又沒有搜索證就闖入對方的家中,使得他們必須放走天蠍,且天蠍的槍和死去的女孩在庭上都沒法作為證據;這使卡拉漢相當不滿,便利用業餘時間跟蹤著天蠍。當天蠍發現自己遭到跟蹤時,便付了一名男人200美元,狠狠的揍了自己一頓,然後到醫院中向媒體透露自己是個警察暴行下的受害者。在卡拉漢被局長質問並要求不准在跟蹤天蠍後,岡薩雷斯則為了妻子決定退出警察部隊。
打算再犯行的天蠍到一間先前曾被搶劫多次的雞尾酒店,並搶了老闆的槍和錢。之後,他劫持了一輛校車,並向警方要求將從聖羅莎機場飛出的一架飛機上放置贖金。卡拉漢在得知市長打算只付贖金而不打算抓天蠍後,便在該校車前往機場的路上從交流道上跳上校車的車頂。卡拉漢迫使天蠍下車後,後者逃到附近的一處採石場,並與對方展開交火。天蠍的河邊挾持了一名正在釣魚的男孩並要求卡拉漢放下手槍,但反被對方打傷左肩。當卡拉漢靠近並發現天蠍打算拿掉在前面的槍時,卡拉漢再次說出了說出自己的觀點:「這是世上最厲害的手槍.44麥格農,能把你的腦袋打飛,你應該問自己一個問題:『我感到幸運嗎?』你覺得呢,痞子?」但天蠍仍打算拿槍反擊;與之前的遭遇不同的是,由於卡拉漢的槍中確實還留有一顆子彈,這使天蠍為此中槍死去。卡拉漢成功將他就地正法後,便拿出自己的督察徽章並扔到了水中,然後轉身離去。