1860年5月,太平军第二次扫平江南大营,挥兵东进,一路势如破竹,连下丹阳、常州、无锡、苏州。太平军随即以苏州为首府, 建立了包括二十多个州县的苏福省,声威大振。六月底,忠王李秀成的部队已逼近上海。
太平军在上海附近各县的军事行动十分顺利。6月22日,克嘉定,30日下青浦,7月1日占松江,一路摧枯拉朽,势如破竹。 在进攻青浦时,由于得到城内人民的支持, 进攻更加顺利。 正当李秀成率军准备乘胜夺取上海时,他遇到了意外的敌人——英、法、 美为首的外国侵略者。
5月26日,即太平军攻克苏州的前夕,在上海的英国公使卜鲁斯和法国公使布尔隆应道台吴煦的要求,宣布保护租界及上海内城。其日,法军200人驻董家渡天主堂附近;英军200人进驻上海城西,炮兵200人驻守法租界。但英、法拒绝代守嘉定、太仓,因为这时他们正在北方和清军作战,在上海的兵力不足,大规模出动尚有困难。在这种情况下,一个叫华尔的美国流氓通过结识泰记洋行的老板、候补道杨坊与吴煦接洽,表示愿意先招集一批外国士兵来为清政府效劳。
6月间,道台吴煦和杨坊奉江苏巡抚薛焕之命,募集商款,雇用华尔,要他招募一支洋枪队和太平军作战。 洋枪队很快组成了,华尔任领队,另外两个美国冒险家白齐文和法尔思德任副领队。第一批队员100多人,都是些冒险亡命的外国士兵和水手。洋枪队装备着洋枪洋炮等新式武器,军需由薛焕、吴煦、杨坊负责供给。
7月6日,忠王部将认天安陆顺得等率部自松江出发进攻上海,推进到泗泾、真如、大场等地。这是太平军首次向上海进军,它揭开了长达三年之久的太平军多次攻打上海的序幕。
上海的官僚地主大为震动,他们用3万两银的重赏鼓动华尔的洋枪队去夺取松江。7月16日, 洋枪队和清军趁松江守备空虚之际,攻占松江县城。与此同时,向七宝推进的太平军也在途中遭到地主武装的袭击。 陆顺得等因腹背受敌,遂退守黄渡、南翔一带,在那里掘壕设卡,并设置乡官,处理民政,休整兵力,伺机反攻。洋枪队获胜之后,更加猖狂,又于7月30日会同清军李恒嵩部进犯青浦。李秀成亲率大军驰援,8月2 日大败洋枪队,华尔五处受伤,狼狈逃走。8月9日,补充了兵员的洋枪队在白齐文、法尔思德的带领下,会同清军再度猛扑青浦, 结果又碰得头破血流。太平军又在8月12日乘胜收复了松江、这样,李秀成便率军直抵上海。
18日,太平军抵达上海县城西南九公里的徐家汇。是年10月,清政府在英法联军的炮口下接受了丧权辱国的《北京条约》,外国侵略者用武力压迫清政府俯首听命的目的已经达到,第二次鸦片战争结束。接着,中外反动势力就进一步勾结起来共同镇压中国革命。但由于这时太平军声威正旺,外国侵略者要直接动手还需有一段准备的时间,因而便先采取缓兵之计,以麻痹中国的革命力量。
1861年春,英海军司令何伯借口巡视新开口岸,去天京访问,要求太平军承认他们从清政府那里得到的权益,并不得进攻上海。太平天国方面一则由于对外国侵略者还存有某些幻想,二则因为忙于长江中游沿岸各地的作战,暂时无力东顾,因而答应在一年内不干涉长江商业,同时也不以任何方式进攻上海。于是,外国侵略者便放手加紧备战。
在青浦受伤后去巴黎养伤的华尔,一回到上海就积极整顿和扩充洋枪队,并改变编制,吸收中国籍士兵参加,由外人为官,使洋枪队成为一支拥有近5000 人的中外混合的反革命军队。其士兵头裹绿巾,衣裤短窄, 卫士穿深蓝色,炮兵穿淡蓝色,步兵穿淡绿,人称“绿头”或“假洋鬼子”。
这时,英法联军也陆续从北方调到上海,加上万余清军,上海的反革命武装大大加强了。
1861年底,太平军攻克杭州。接着,李秀成率兵再度进军沪渎。1862年1月11日,由谭绍光、郜永宽等率领的太平军约3万人,逼近吴淞,13日到达离英国领事馆不过一英里半的北郊一带。20日太平军围吴淞,占高桥,浦东方面几乎全部为太平军所占领。
但华尔在2月16日假扮西洋打猎商人,潜入太平军占领区,侦察地形。随后,华尔从松江调来洋枪队,何伯和法舰队司令卜罗德也调集英、法舰船11艘,于2月24日击败高桥太平军。3月1日,英法及华尔军又败谭绍光等于上海东南的南桥(今奉贤)等地。这一仗后,太平军被迫退守嘉定、青浦一线。华尔的洋枪队也改名为常胜军。
4月下旬,英法军、常胜军及清军联合向太平军发起大规模进攻,在二十天内连陷嘉定、青浦、南桥等地。 法国侵华海军司令卜罗德在激战中被击毙。五月中旬,中外反动军队一万三、四千人进犯太仓。太平军一部约2000人诈降,敌军益骄。
5月17日,李秀成自苏州率精锐部队赶到,与原先诈降的太平军内外夹攻,大败敌军。清军某部7000人中,得脱者仅百余人,知府李庆琛亦被打死。太平军乘胜追击,包围嘉定。前来增援的英军司令士迪佛立仓皇突围逃走,残兵被追杀过半。5月26日,太平军收复嘉定,并继续向上海挺进。5月29日,华尔率常胜军伙同英军从松江赶来救援,再次被击败,常胜军副领队法尔思德被生擒。至6月上旬,除松江以外,上海附近各县城几乎全被太平军攻下。太平军一边围困松江,一边猛攻新桥的李鸿章兵营,并进至法华镇、徐家汇、九里桥一带,上海指日可克。
但就在这个紧要时刻,曾国藩的湘军从安庆沿江东下,天京告急。天王一日三道回援的诏令传到上海前线,李秀成忍痛撤军,上海的中外反革命势力绝处逢生,太平军功败垂成。
1862年8月,李秀成部将谭绍光又一次向上海发动猛烈进攻,连克法华、静安寺、大场、新闸等地,击毙淮军悍将韩正国。李鸿章急忙以重赏聘请外国军队助剿。他和常胜军统带白齐文率兵前往阻击。11月16日,与太平军在青浦、嘉定交界的三江口、四江口交战。白齐文的炮队发挥了威力,太平军受挫,损失巨大,只得撤出了上海地区。太平军对上海的多次进攻终于在中外反动势力的联合围攻下失利。