1993年,香港發生連續殺人案,重案組高級督察楊光耀在追波疑兇的過程中,意外在電梯裡穿越時空至2018年.
然而在這個時代,光耀的妻女音訊全無,之前的案件仍末破解,幸得昔日上司協助,光耀頂替了臥底的身份回到警署復職,認識了和他辦案風格截然不同的搭檔,而他的來歷也引發眾人懷疑。
此時,又有新命案出現,命案的背後似乎還有更大的明謀,諸多線素讓光耀回想起當年的命案,在這場奇遇中,他終於認出了近在咫尺的搭檔原來就是自己的女兒,也得知了妻子早已在他穿越後遇難身亡,他誓抓住兇手回到過去,改變這一切。
1993年的旺角,一個禁止停車的區域裡,盲標仗著自己老大的身份,執意不願將車移開,即便麵臨抄牌的處罰。這時,楊光耀主動介入,了解狀況後,他準備協助警方讓盲標交出車鑰匙。然而,盲標的老大突然現身,並故意在警察面前將鑰匙扔進了下水道,打算揚長而去。楊光耀見狀,毫不猶豫地衝上前去,準備搜身,並懷疑對方可能磕了藥。未等對方反駁,他便決定徹查此人經營的店鋪,並鎖住旁邊的車輛。對方見狀,只好妥協。
處理完停車事件後,楊光耀又迅速投入另一起命案的調查。他迅速抵達案發現場,遇到了新人劉偉滔。兩人打招呼後,便開始詢問案件細節,得知現場並未發現凶器。在得知死者名叫鄧榮添後,楊光耀開始仔細觀察,試圖找出致死原因。然而,新來的人卻因為看到滿地鮮血而忍不住作嘔。楊光耀及時阻止了他,並安撫其情緒。隨後,警方將部分嫌犯帶走審問,但對方並不配合,故意搗亂。處理完這些搗亂者後,楊光耀向上級報告了情況,並認為這並非簡單的室內搶劫案。在離開前,他還特別囑咐同事要保持冷靜。
此後,旺角接連發生多起連續殺人案。楊光耀身為警察,第一時間趕到現場調查,但仍毫無頭緒。就連學校附近的社工也慘遭毒手,這些案件被警方列為謀殺案。楊光耀在現場仔細勘查,認為被害者的死法與黑鬼添的手法相似。
夜晚,楊光耀坐在街上狂飲啤酒,然後跳入河中游泳釋放壓力。上岸後,他繼續分析案情,並前往驗屍間對死者進行全身檢查。檢查中,他發現死者身上有一個針孔,並決定對另外三名死者進行重新檢查。
隔天,楊光耀送完妻子和女兒後,又開始著手調查案件。透過線索,他找到了曾被送入精神病院的麥志鴻。聽完麥志鴻的言論後,他大為震驚,並決定追蹤留言人的身分。在審訊室觀察麥志鴻時,又有一名消防員遭遇命案。楊光耀得知後,急忙趕往現場。回去後,他再次找到麥志鴻詢問案情,但對方仍說了一些匪夷所思的話。不久,麥志鴻突然拿起棒子自殘並向警察呼救,導致楊光耀被陷害。上級決定停止他的警察工作。楊光耀憤憤不平地認為麥志鴻是兇手。停職後,他回家探望家人,卻發現妻子和女兒差點因他而遭人炸死。
某個雨夜,楊光耀在地下道遇到身份不明的人後窮追不捨。他冒著大雨一路追趕至樓上電梯內,卻被突襲打暈。醒來後,對方已消失無蹤。他在街上徘徊尋找線索。
楊光耀在四周徘徊許久,卻未發現任何異常。他轉而回到女兒所在的醫院,打算探望家人,但醫生檢查後告知他,醫院裡根本沒有他女兒的名字。此刻,他顯得手足無措,急忙跑到大街上,向路人借了一塊錢,隨後在附近的街角撥打電話,卻依舊沒有收穫。他甚至回到自己家中,也未見家人的蹤影。不甘心的他再次來到追蹤黑衣人的樓梯間,憑藉記憶拼命搭乘電梯,卻發現自己始終在原地打轉,連看門的門衛都未曾改變。
心灰意冷的楊光耀在街上漫無目的地遊蕩,最後走進了一家酒吧。他注意到裡面正在進行非法交易,而警察已混入其中,要求所有人出示身分證以證清白。他下意識地摸了摸口袋,卻發現身分證不翼而飛,於是慌忙逃離。然而,女警迅速追上他,兩人一番打架後,其他警察趕到現場,將他戴上手銬帶走。
在警察局內,楊光耀失魂落魄。突然,一個中年男子走進審訊室,定睛一看,發現竟是失蹤二十多年的楊耀光。楊耀光也認出了劉偉滔,兩人一番交流後,劉偉滔講述了這二十年來的經歷,包括楊光耀的妻子全香港尋找他的事情。楊光耀聽後,決定繼續尋找家人,並破獲這些案件。上司拗不過他,只好同意他以臥底身份回到警局。他改名為陸家傑,重新開始了臥底生涯。
在警局,他們接到了新的報案電話,一起浴缸溺斃的案件。死者手機一直處於充電狀態,楊光耀以警察身分展開調查,發現這並非簡單的意外,而是有人蓄意謀殺。同時,逍遙法外的麥志洪再次犯案。楊光耀等人討論起這起案件,發現它與二十五年前的連續殺人案驚人相似。他們懷疑麥志洪再次犯案,但來到精神病院卻發現他已逃走。楊光耀氣憤地責怪劉偉滔未能看住嫌犯,但警方目前卻束手無策。