北齐天保六年(梁萧渊明天成元年、555年)九月,梁征西大将军
陈霸先因反对骠骑大将军
王僧辩屈从北齐、迎立被俘的梁贞阳侯
萧渊明为帝,举兵攻占
石头城(今南京城西),缢杀王僧辩父子。十月,废萧渊明,复立晋安王
萧方智为帝(是为梁敬帝),仍称藩于
北齐。王僧辩余部相继起兵反叛,陈霸先率军征讨。僧辩姻戚谯、秦二州刺史徐嗣徽举州降北齐,并密结
南豫州刺史任约率精兵5000乘虚袭建康,攻占石头城,以游骑进逼台城(今南京
玄武湖南),被陈霸先部将
侯安都击败,退还石头城,与梁军相持。
北齐天保六年(梁萧方智绍泰元年、555年)十一月,北齐派兵5000渡江,进据
姑孰(今安徽
当涂),以策应徐嗣徽和任约;又派安州刺史翟子崇、楚州刺史刘士荣、淮州刺史
柳达摩领兵万人自胡墅(今南京北、长江北岸)向石头城送米3万石,马千匹。面对北齐军的进攻,陈霸先以合州刺史
徐度于冶城(今南京
朝天宫一带)立栅抵御,并采纳部将
韦载在
秦淮河右岸故垒筑城,以通东道转输,分兵绝北齐军粮运后乘机而击的建议,派侯安都领兵夜袭胡墅,烧北齐船千余艘;部将
周铁虎于板桥浦(今南京西南)破北齐水军,断其粮运;韦载于大航(今南京镇淮桥东)修筑
侯景故垒,以杜稜镇守。时北齐军于石头城仓城门、秦淮河南立二栅,与梁军对峙;大都督萧轨领兵屯江北以声援。不久,徐嗣徽部攻冶城栅,大败,遂留柳达摩等守石头城,亲往采石(今安徽当涂北)迎接北齐援军。
十二月,侯安都袭秦郡(今江苏
六合北),破徐嗣徽营栅,俘数百人。陈霸先于冶城连舟为桥,率众渡秦淮河,围攻仓城门、秦淮河南二栅。柳达摩等渡秦淮河布阵。陈霸先督兵奋战,纵火烧栅,齐军大败,争舟相挤,溺死者上千人,船舰悉为梁军所获。徐嗣徽和任约引北齐水陆将士万余人欲还据石头城,因陈霸先军扼据江宁险要而不敢进,退至江宁浦口。侯安都率水军袭破之,徐嗣徽等单舸逃走。陈霸先乘势围攻石头城,柳达摩遣使请和,且求质子。梁屡遭战乱,建康虚弱,粮运不继,朝臣皆欲与齐讲和。陈霸先难违众议,遂以侄等做人质,与北齐盟于城外。齐军北归。
北齐天保七年(梁萧方智绍泰二年、556年)二月,北齐军背约复攻梁。徐嗣徽、任约联兵袭采石,俘梁明州刺史张怀钧。三月,齐遣仪同三司萧轨等与徐嗣徽、任约合兵10万出栅口(今安徽含山境)向梁山(今和县南)进攻,遭梁将黄丛阻击,败退芜湖(今芜湖市东)。陈霸先遣定州刺史沈泰等归入侯安都部,共据梁山御北齐军。部将周文育攻湓城(今江西九江境),未果,被召回。四月,陈霸先至梁山巡抚诸军。侯安都轻兵袭北齐历阳(今和县),破之,俘获万计。
五月,北齐军自芜湖发兵进至秣陵故治(今江苏江宁南)。陈霸先派部将周文育领兵屯方山(今江宁东南)、徐度屯马牧、杜稜屯大航南以御之。北齐军跨秦淮河立桥栅,引渡兵马,夜至方山。陈霸先令梁山守军侯安都、徐度等还守建康。北齐军自方山攻至倪塘(今江宁东南),游骑且至台城,建康戒严。陈霸先、侯安都等相继于白城(今江宁东)、耕坛南击败北齐军;陈霸先潜撤精卒3000增援沈泰部渡江,于瓜步(今六合东南瓜埠镇)袭败北齐行台赵彦深,获舰百余艘,粟米万斛。
六月,北齐军先后从钟山(今南京紫金山)、幕府山(今南京北)围攻建康,遭梁军抵抗。梁将钱明领水军出江乘(今句容北),截击北齐军粮运,尽获其船、米。北齐军乏食,处境危困,遂越过钟山。陈霸先与众军分屯乐游苑(今南京玄武湖南侧)东及覆舟山(今南京城区东北)北,断北齐军冲要。
北齐军至玄武湖西北,欲守北郊坛,梁军亦移至坛北,与北齐军对峙。时值连日大雨,北齐军昼夜困于泥水之中,而梁军可轮番休整。十二日将晓,陈霸先率部众出幕府山,大举反攻,侯安都自白下(今南京金川门外)引兵横出北齐军后击之,斩获数千人,擒杀徐嗣徽等。时江乘、钟山等地梁军也相继获胜。北齐将萧轨等46人被俘,士卒溺水、相踏致死者甚众,舟舰被烧,仅任约、王僧辩弟僧愔生还。