一九三八年春季伊始,日本军队的铁蹄踏入中国领土。上海这座都市,正被一场庞大的阴谋所覆盖。出身于码头帮派的上海商会会长涂怀志,为获取日本方面的庇护,策划绑架了上海著名红木家具商唐家的长子唐汉青,意图以此交换唐家一处位置优越的码头。然而这一计划被一位街头乞丐夏光奇(钱泳辰 饰)(常被称为小夏)意外搅乱,唐汉青得以获救。唐府的管家六叔对此事愤懑不平,率领人手前往寻涂怀志理论,双方对峙之际,被唐爷出面阻拦。唐爷秉持知恩图报的原则,将因受伤而失去记忆的小夏收留在唐家,并在偶然间察觉小夏拥有精湛的磨刀技艺后,将其收为弟子。
日军少将冈村司令官奉命抵达上海,旨在强化所谓“共荣圈”的统治。冈村的到来对上海地区的抗日力量造成了严重打击,一时之间,上海滩上空阴云密布。以上海《申报》记者身份为掩护的国民党女特工伊敏(吴佳尼 饰),前往上海火车站执行刺杀冈村的任务。但冈村行事狡猾,临时改乘渡轮,导致伊敏陷入敌方预设的圈套,历经险境方得逃脱。
唐家的小女儿唐汉彩(何泓姗 饰)(昵称彩儿)多次秘密跟随学校的朱老师参与抗日活动。为呼吁全民抗日,彩儿在街头张贴标语时,被日本士兵抓获并遭受凌辱。此时小夏突然现身,以利刃击杀日军士兵,将彩儿解救出来。此次事件对小夏造成强烈刺激,他逃离唐家,记忆逐渐复苏,立誓要为在南京大屠杀中遇害的家人报仇雪恨。
名为“杀冈计划”的行动屡经波折。小夏暗中跟随彩儿,从时任上海市长秘书的彩儿姐夫余炎宝那里,探听到冈村的居住地址。小夏独自潜入国际饭店实施刺杀,却因冈村诡计多端而未能成功。随后,小夏又获悉冈村与一位歌女曲丽曼存在关联,于是潜入冈村所住的公寓,最终成功将其铲除。通过这次行动,彩儿开始推测并最终确认了小夏的真实身份。尽管不清楚小夏究竟是共产党还是国民党人士,但只要是为消灭日寇而行动,彩儿便心怀崇敬,由此她对小夏逐渐萌生了情感。
冈村遇刺事件震动了整个上海滩,这位江湖杀手成为民间百姓口耳相传的传奇人物。日军大将井川下令全力缉拿凶手。通过现场遗留的刺刀线索,舞女曲丽曼指认小夏为行凶者,但随后因曲丽曼离奇死亡,加之彩儿为小夏提供了不在场证明,小夏得以摆脱嫌疑。井川大将在租界民众的压力下,同时出于对唐家产业与势力的觊觎,决定采取放长线钓大鱼的策略,释放了小夏。然而,由于未能抓获江湖杀手,井川大将恼羞成怒,将逮捕的数名抗日义士在黄浦江边处决,实施了疯狂的报复。共产党员朱老师与数名爱国进步学生在这场屠杀中英勇牺牲。
这场大屠杀激起了上海百姓的强烈愤慨。彩儿劝导小夏应以国家大义为重,引导他加入上海地下抗日组织。但此时的小夏仍不愿信任任何政党,一心只为家人复仇。井川动用了一名长期潜伏在上海的日本特务机关内线,调查冈村被杀案件,此人便是日本商人京野的妻子美谷子(唐妤萌 饰)。美谷子发现了小夏行踪中的疑点,井川遂绑架唐爷作为要挟,意图引出小夏。已隐居山林的小夏听闻此讯,前往医院营救未果,决定以“投案自首”换取恩人的安全。然而,一心赴死的小夏并未获得日军的认可。国民党特工张昆(霍政谚 饰)和伊敏为将小夏收归己用,故意模仿小夏的杀人手法制造事件,以混淆日军视听。杀手的“重现江湖”令井川颜面尽失,迫于政府官员及媒体等各界的舆论压力,他不得不再次释放小夏。
井川陪同滕条司令宴请上海战区日军高官浩二,并特意邀请唐爷家人共同赴宴,企图设下圈套,再次诱捕江湖杀手。上海区的军统特工密谋刺杀行动,小夏为偿还人情,暗中协助张昆,利用吃螃蟹的工具刀成功刺杀了日军高官浩二。此举也使伊敏和美谷子确认,小夏正是传说中的江湖杀手。
觊觎中国红木雕刻艺术的井川,吞并了知名的唐氏红木产业。小夏急于复仇,不慎落入美谷子设下的陷阱。彩儿在暗中提供帮助,使小夏得以死里逃生,但两人也因此产生误解。彩儿通过姐夫余炎宝再次获得线索,在执行刺杀井川的任务中,因张昆和伊敏的突然出现,行动被打乱。此次刺杀虽未成功,但张昆和唐家众人均由此知晓了小夏的真实身份。
张昆试图说服小夏加入军统组织,与此同时,彩儿也希望小夏加入共产党领导的地下抗日组织。由于张昆承诺协助小夏除掉井川,小夏决定暂时跟随张昆,以完成个人复仇。张昆带小夏面见上司梅区长,未料梅区长已投敌叛变成为汉奸。小夏亲眼目睹国民党的残暴行径与信仰沦丧,遂断绝了与张昆的合作。
此时,前来上海组织地下党工作的马政委与彩儿取得联系,集结爱国人士,重建地下抗日力量。小夏受到彩儿和马政委的感召,目睹共产党人舍弃个人私利、为保卫国家英勇牺牲的无畏精神与崇高民族情怀,逐渐认识到在国家民族存亡之际,个人命运与民族命运的紧密关联;同时,他深刻体会到“国若不存,家何以安”的道理,决定向抗日组织靠拢,接受组织考验,在共产党的领导下投身抗日斗争。
加入抗日小组后,小夏执行了多次锄奸行动,成功刺杀了日军一名重量级高官及汪精卫手下的一名铁杆汉奸。不久,张昆接到密令,需潜入日军司令部窃取一份绝密档案,但两次行动均告失败。小夏献策获取张昆信任,成功取得档案。档案解密了日军企图通过经济劫掠实现“以战养战”、从而断绝中国抗战血脉的秘密行动,即“金百合计划”。在马政委、彩儿和小夏等人的协同努力下,他们成功炸毁了停泊在码头的日军战舰,阻止了该舰抵达长江战区的行动。
井川因此受到滕条司令的训斥,下令剿灭这个抗日组织。盟军攻占柏林后,井川预感末日将至,开始丧心病狂地屠杀反日人士。同时,军统高层向伊敏下达秘密任务,借日本人之手铲除共产党力量,并收编小夏等义士。上海地下组织接连遭受破坏。为考验张昆对党国的忠诚,伊敏奉命迫使张昆在党国利益与个人情感之间作出抉择,最终张昆在疯狂之下选择了绑架彩儿,逼其交出抗日组织成员名单。生死关头,小夏成功营救彩儿。
《波茨坦公告》发表后,伊敏企图扫清障碍,除掉彩儿和小夏等抗日志士。张昆的母亲张夫人性情刚烈,因不忍目睹儿子沦为卖国贼,选择跳楼自尽,此事使张昆的思想产生动摇。最终,张昆为保护彩儿而牺牲。
日本军队在中国内陆前线节节败退,驻上海日军深感回天乏术,企图在上海进行最后的经济掠夺。小夏为阻止日军将掠夺的古董家具等文物运往日本,在码头与井川部下展开激战。战斗中,唐爷及其长子唐汉青不幸牺牲。最终,在及时赶到的共产党人协助下,小夏成功铲除井川,既为家人报仇雪恨,也为国家挽回了重大损失。晨光之中,小夏与彩儿迎着朝阳,迈向光明的未来。