顺治三年(隆武二年、1646年)五月,满清征南大将军贝勒博洛乘虚突破钱塘江,绍兴、杭州、义乌、金华等城相继失守,南明宗室乐安郡王、楚亲王、晋平郡王在金华殉国。
鲁王则在石浦守将张名振护卫下自台州出海到达舟山,张煌言随即赶回鄞县故里,与老父、继母、妻儿子女洒泪诀别,追随鲁王一行至舟山。
但舟山总兵、隆武帝所封肃虏侯黄斌卿却拒绝接纳,鲁王只得逃往福建长垣。不久,鲁王去厦门,张名振留舟山待机。张煌言与张名振待局势稍定后,重返浙东与舟山地区,组织招募军队。而张煌言被鲁王加授右佥都御史之职。
顺治四年(永历元年、1647年),满清苏松提督吴胜兆欲在苏州反正,起事前联络定西侯张名振支持。张煌言劝张名振援吴胜兆,张名振遂命张煌言为监军,徐孚远副之。
于四月六日自岑江出发。不料四月十三日在崇明岛外遇风暴而大败。总督浙直水师户部左侍郎沈廷扬、总兵蔡聪等将领十余人上岸后被满清鞑子俘获,于七月三日就义。
而张煌言也因飓风吹翻船舶,陷入清军之手七天,后来找到机会逃出到了海上。在途经黄岩时,又被追赶的清军包围并以箭射之,张煌言率领数骑突出包围,自此他更加努力练习骑射。
并在浙东招募集结军队于上虞县平冈寨屯田拒守。当地的多个山寨经常劫掠民众,唯独张煌言与王翊让他们的部下不要扰民,深得百姓拥护。
顺治十年(永历七年)八月,张名振和监军兵部侍郎张煌言带领五六百艘战船向北进发,来到长江口的崇明一带沙洲。崇明城中的清军兵力有限,不敢出战,被围长达八个月。
顺治十二年(永历九年),张名振与张煌言合兵三入长江,抵燕子矶,因兵力单弱,无功而返;于是会同郑成功、甘辉、陈六御等收复舟山。
顺治十五年(永历十二年),永历帝封郑成功为延平郡王,张煌言为兵部左侍郎。同年清军进至云贵,郑成功、张煌言进军浙江,攻克乐清、宁海等地,在羊山遭遇台风,损战船百余艘,漂没战士八千余人,被迫撤回厦门。
顺治十六年(永历十三年),张煌言与郑成功一起再次率军入长江作战。先占领崇明。后于六月一举攻占瓜洲。攻克瓜洲后,张煌言所率军一万,舟百艘西行攻克仪真,并进军六合,沿途受到沿江民众的热烈欢迎。
张煌言于七月七日率军赶到芜湖,后兵分四路,分道攻城略地,且在沿途“移檄诸郡县”,张贴