西元前511年(吳王闔閭三年)夏,吳國派出使臣,責令徐國(今安徽泗縣)和鐘吾國(今江蘇宿遷東北)交出領兵在外的公子掩餘和燭庸。二國依仗有強楚撐腰,拒不從命,並私自放走二公子,讓他們去投奔楚國。
楚昭王十分得意,立即派出大員隆重迎接二公子,並讓二公子在養地(今河南沈丘縣)暫時住。接著,又命令莠尹然、左司馬沈尹戍重修養城,把養城東北邊的城父、東南邊的胡田兩塊地方封給二公子,企圖利用二公子為害吳國。
吳王闔閭十分清楚楚國此舉的用意,所以闔閭以孫武為將,下定決心要攻克養城。這一仗是孫武初試兵鋒的一場戰鬥,因此,孫武在戰前認真分析了敵我雙方的形 勢。孫子認為,養邑一戰,闔閭目的一方面是要擒殺掩餘和燭庸二公子,剪除自己政治統權的隱患;另一方面還在於消滅淮水北岸的楚軍勢力,為日後破楚掃清障 礙。因此,孫武向闔閭提出了「肆楚疲楚、攻克養城」的戰略方針,在戰術實施時,孫武將吳軍分編成三支勁旅,先以第一軍兵力佯攻伐夷,在佯攻不克後,吳軍便 兵鋒一轉,南下渡過淮水,直驅500餘裡,攻打潛、六二地;當楚軍的增兵即將到達時,吳軍便撤退待命,不與楚軍正面衝突。
楚軍見吳軍撤走,便將部隊駐紮在南岡(令安徽潛山縣)。孫武這時調動他的第二軍人馬沿淮水而上,疾行軍數百里直撲楚之戰略要地弦邑。當楚軍即將趕到弦邑 時,孫武便命部隊撤退待命。由於吳軍的兩支部隊成功地調動了敵軍,使楚軍疲憊不堪,士氣低落。這時,孫武才命令吳軍的第三軍實施了攻克養城的戰鬥。吳軍一 舉攻下養城,擒殺了二公子,勝利地結束了這場戰鬥。
這時的闔閭被勝利沖昏了頭腦,想要一鼓作氣攻克楚都郢(今湖北江陵縣紀南城)。但孫武認為這樣做不妥,便向吳王進言道:「楚軍乃天下勁旅,非徐國和鐘吾國 所能比。我軍巳連滅二國,人困馬乏,軍資消耗甚大,不如暫且收兵,蓄精養銳,再待良機。」吳王聽從了孫武的勸告,下令班師。
這次戰役的勝利為吳以後大舉攻楚打下了良好的基礎。