1854年歲末,中華大地遭遇了百年不遇的一場嚴寒,黃河、長江兩岸山東、安徽、河南、陝西幾省普降大雪,一時間饑民無數,百姓餓蜉千里。清政府連年內憂外患,國庫空虛,以無心顧及百姓。加之地方官員貪婪腐敗置百姓飢寒交迫於不顧,致使數省餓死凍死者無數,百姓紛紛背井離鄉,逃往江南,以求生機。可清政府怕百姓南逃後會加劇江南的亂局,嚴令各省禁止飢民外逃,受到死亡威脅的百姓紛紛揭竿而起,起義的烽火此起彼伏,山東、河南、陝西數省的八旗綠營,在起義軍面前接連敗北,龜縮在幾個大城市裡。而此時,從天津突圍南下的太平軍北伐部隊正被勝保部圍困於河南濮陽,河南義軍首領於直中,派人暗地裡聯絡北伐軍,雙方約定聯手,在河南起義軍的幫助下,太平軍北伐部隊再次突圍成功,1855年正月與於直中起義部隊在延津會師,北伐軍再度壯大,隨後度過黃河,南下開封,開封守軍死守城池不出,北伐部隊留少數人馬於開封城外虛張聲勢,迷惑清軍,主力悄悄南下,這時候,北伐軍前面已經沒有堅固的大城市和強大的清軍。二月中旬,北伐軍走杞縣、拓城,接近安徽。
接著中原亂局,1855年初,太平軍以九江;安慶為支點,從南北兩個方向對清軍控制的地區發起攻勢。正月初十,憑藉去年年底九江湖口大捷的威勢,石達開率八萬大軍南下,於江西德安,永修與曾國藩的湘軍展開激戰,兩戰兩捷,湘軍死傷過萬,只能退守南昌。失去陸軍支援的湘軍水師,也只能棄船上岸,棄船湘軍火燒戰船的大火整整燃燒了一夜。湘軍徹底失去鄱陽湖的控制權。
正月十五,太平軍秦日剛、李秀成部朔江而上,連續作戰,克黃石,佔鄂州,與湘軍彭玉麟部在鄂州激戰十數日,雙方各有損傷。由於江西方面的敗局,彭玉麟部側翼受到威脅,也被迫退至武昌。
正月十五,為接應南下的北伐軍,太平軍陳玉成領精兵一萬,奇襲舒城得手,威脅廬州,沿途太平軍開倉放糧,鎮壓貪官,各地百姓紛紛響應,陳玉成部很快就擴大到三萬多人。正月二十,陳玉成猛攻廬州,廬州城內的三千綠營在地方豪紳的團練協助下,頑強死守,兩軍於廬州城下苦戰四日夜,陳玉成部傷亡慘重,加之廬州守軍堅壁清野,陳玉成部給養困難。遂放棄了強佔廬州的計劃,轉道六安,在六安休整幾天補充糧草後,很快北上霍丘,二月底攻佔阜陽後稍做休整後繼續北上,三月初,與南下太平軍在安徽毫州勝利會師。至此,轉戰南北將近兩年的北伐軍,終於擺脫了四面受敵的境地,完成了千里突圍的壯舉。兩軍會師後,江淮沿線的太平軍總數多達七萬餘,會師後的太平軍趁勢南下,再次逼近廬州,這一回廬州守敵再無戀戰之心,官員豪紳聞風東竄,逃往蘇北,廬州不戰而得。至此,太平軍的北進計劃圓滿完成,大軍席捲整個安徽,清政府完全失去了對安徽的控制。
面對各方敗局,咸豐皇帝急令琪善、向榮江南江北大營加快向南京的進攻,以緩解各個戰場上的危局。然而江北大營不過是臨時從各地抽調的部隊拼湊而成,士氣低落,統率大軍的琪善也早就讓太平軍給打怕了,眼前的局面琪善是不求有功,但求無過,領著江北大營的十萬大軍呆在揚州、六合一線遠遠的威脅南京。向榮雖帥軍進攻南京,但在江寧一線遭遇太平軍李世賢部阻擊,雙方激戰五日,李世賢部在傷敵一萬餘後,兵力不支,退回南京,向榮部雖佔領江寧,但由於沒有得到琪善方面的配合,害怕孤軍深入遭到太平軍的反擊,在佔領江寧後也沒有繼續進攻南京的意思。
咸豐皇帝對琪善和向榮的作為不大很快就表示了不滿,下旨怒斥而人貪生怕死,畏敵不前,有負皇恩,嚴令如不能再立寸攻,就等著回家抱孩子去吧。
被咸豐臭罵一頓的向榮和琪善都同時想到了一個人,那就是楊一。向榮是想讓楊一幫著自己出個主意,應付咸豐的命令。琪善是想讓楊一的新軍出戰,自從揚州兵敗後,咸豐有令,這楊一的新軍嚴守上海,防止洋人鬧事,不需要再聽琪善的調遣,也就是說,這楊一雖然還是琪善的手下,但新軍琪善是調不動的。
1855年三月初,琪善、向榮同時來到上海,急招楊一,商量應對眼下戰局的辦法——
上海,江蘇巡撫行轅。楊一與二人聚會。
“向大人,這皇上發火了,逼著我過江去和發賊拼命,你又不是不知道,上會揚州戰役後,我手頭的水師損失殆盡,我拿什麼過江啊?”琪善急的直打轉。
“你也別光說你的困難,你倒好,我帶著部隊在江南猛打,你呢,就這麼隔著長江看熱鬧,