向荣的“滥战”造成一个大兵压境,清军动以十万计的假象,许多太平军士兵开始从前线逃亡。据太平军俘虏供称,“黄老二、黄世隆向说,现在又无盐食,总在六月初旬有月亮时,总要窜回……当初众人信他说拜了上帝,可消灾难登天堂。拜了之后,因有众属在他手,不敢逃出。小的并没妻子,因出来没有生路,也只好随他”,“小的知道跟错他们了,盐也没得食,钱也没得使,他们头子尽自己快活”(《李进富供词》未见原文,转引自《太平天国战争全史》)。
“天父”、“天兄”频频下凡,批评教育教徒中蔓延的投降主义,又再次申明了军纪。杨秀清决意打几个胜仗鼓舞军心,亲统精兵发动攻击,将乌兰泰军击溃,但随即遭到向荣、刘长清袭后,不得不退回阵地。赛尚阿发现太平军死守当地,是要等候水稻成熟收割补充军粮,于是下令三军务必要在稻熟前攻占阵地。向荣屡次与杨秀清争锋,渐渐熟悉杨秀清的战术。趁大雾天气,向荣率领军队猛烈攻击萧朝贵设防的峡谷,双方各用鸟枪、抬枪、火炮攻击,杀声震天。在“遏必隆”刀的威吓下,向荣楚军奋勇争先,杀败萧朝贵,夺取峡谷,继而与韦昌辉部激战。在向荣吸引太平军注意的同时,刘长清率领善攀岩的川兵沿要塞双髻山西北小道潜至鹞婆岭,“乘高轰击”。清军两路夹击,太平军阵势大乱,向荣一战而夺双髻山、猪仔峡,战线推进到太平军防区腹地,视野开阔,被阻挡于峡谷外的八千援军得以开进战场。
两大要塞失守,洪杨极为震怒,连夜派兵争夺双髻山。此时向荣楚兵锐卒千人已建立牢固阵线,又拨皖兵五百,扼守刘长清攀缘的小道。太平军因是仰攻,被向荣据险杀败。杨秀清连吃败仗,将怒火全撒在部署于平地的清军达洪阿部身上。达洪阿向来好着奇装怪服,以炫耀自己在军中独特的地位,于是太平军集中攻击达洪阿耀眼的黄马褂。达洪阿被抬枪击伤马匹,杨秀清手下常败将军乌兰泰赶来救援,再次毫无悬念地被杀败,达、乌二人丧师殆尽,仅以身免。
太平军虽痛歼乌、达两个难兄难弟,但要塞尽为向荣所夺,眼看是守不住了。赛尚阿奏称:太平军“腹背受创,闻其火药将尽。前二十七日贼败后,多匪跪地,高呼上帝救命。有私行逃出者三百余人……其穷蹙之势已极”。上帝没有来救命,向荣却越益凶猛,水稻是割不成了,洪杨只得准备突围,转到杨秀清的处女战爆发地思旺去。
太平军窘蹙,正是清军进攻的大好时机,谁知清将之间被赛尚阿强压住的相互倾轧势头因为向荣的成功再度高涨。旗人巴清德一力掣肘,不欲使向荣得成大功,上书“五不可”,与向荣争辩。巴清德是个智商低下的旗人乡巴佬,入关多年后,清廷的文书早改用汉字了,巴清德居然还说着不流利的汉话。向荣被他的满汉杂交的鸟语气得肝火大旺,卧床不起。
经赛尚阿一力调解,清将勉强达成一致。向荣养好病后,又再度上演猪仔峡的戏法,在大雾里攻击太平军新建成的要塞风门坳。向荣连攻数日,终于冲上高地,杨秀清的防守已较猪仔峡大有进步,太平军并未溃败,与清军相持七昼夜。洪秀全下令放火烧山,谁知皇上帝打了个喷嚏,刮起了南风,风助火势,大火反往太平军阵地扑去。熊熊火光照耀下,太平军成了伏在暗处的清军活靶子,损失惨重,向荣再夺风门坳。
太平军于古林社再筑工事,与清军对敌。双方多次激战,各有伤亡,清军多名把总、千总被杀,而韦昌辉弟韦志先、韦十一均死于清军炮火。太平军将领黄以镇阴谋煽动兵变,被杨秀清察觉,杨秀清降天父圣旨,揭穿黄以镇图谋,将其斩首,以威慑全军。
八月十六夜,洪杨下令全军从桂平新墟东撤退,以萧朝贵、韦昌辉部为突围前锋。向荣得江忠源计,不再衔尾,专事打头,采取平行追击战术,急率追兵数千取捷径抄太平军前,企图截住去路。二十日,太平军前部方入平南县思旺墟,清军已追到附近的官村,仅隔五里相持。大概皇上帝为先前的喷嚏害死其子民数千而痛惜,怜悯而哀痛地哭泣起来:向荣正待扎营,忽然阴云骤合,大雨倾盆,火药都淋湿了,营盘也不能建立,将士鹄立雨中。萧朝贵、韦昌辉欺清军火器无用,肉搏非其敌手,候雨势稍停就率领队伍冲出,与清军惨烈肉搏。向荣全军覆没,辎重军械尽为萧朝贵缴获。向荣只身逃奔,得江忠源接应,幸免于难。向荣叹息道:“生长兵间数十年,未尝见此贼;自办此贼,大小亦数十战,未尝有此败。”这是自金田起义以来,太平军战果最辉煌的胜利,据丁守存说:向荣的“锅帐、军械、辎重皆为贼有,各将帅仅以身免”(丁守存《从军日记》)。自经此役,太平军冲出了贫瘠的紫荆山区,来到相对繁华的广西腹地,使清廷围困堵击,断绝接济,就地全歼的方针破产。脱离围困后,拜上帝教迅速蔓延开来,不少当地居民被萧朝贵编入太平军,士兵数迅速蹿至八万,其中能打仗的男丁三万余人(训练有素的老兵六七千)。获得向荣军的军械后,装备改善,火力增强,具备攻击大城市的能力,洪杨于是准备攻打永安城。太平军分两路:杨秀清、冯云山保护洪秀全,渡江,从水路北上;萧朝贵、韦昌辉、石达开、罗大纲等走陆路,两路攻取永安。