仁寿四年底,刘方命宁长真、李晕率数千主力从越裳翻越山脉,直逼林邑国腹地;而刘方亲自率领大将军张愻、司马李纲等人统帅水师出比景港(今越南广平省巴洞以北地带),奇袭林邑主力军身后。
大业元年正月初,刘方军队近万人乘坐数百艘战舰到达林邑出海口。
林邑国王梵志正率军应对北面的隋军,这次猝然遇袭,措不及防,仓促应战,阻击军队立刻被刘方击败。梵志兵败逃走,又命麾下分兵把守各处要道,阻击刘方。
这时梵志麾下有人献计,隋军强大,不可力敌,可诱敌深入,以象兵破之。
刘方一路追击溃逃的梵志,主力渡过阇黎江(今越南中部日丽河)。而此时林邑增援的士兵乘坐巨象,从四面八方攻来。
隋军多是北方人,根本没有见过能够征战大象,双方刚一接战,刘方所部便遭遇失利。刘方眼看大象皮糙肉厚,难以一战,便命人挖了许多小坑,用草盖,作为陷阱。
刘方让士兵向林邑军队发起挑战,两军交战,隋军佯作战败不敌,立刻向后退去。林邑士兵得胜,便趁机追击隋军。他们乘坐的大象很多陷入小坑被绊倒,于是林邑士兵非常惊恐,军队大乱。
刘方立刻命埋伏好的士兵用弩射击大象,大象受伤惊惧,立即四散逃跑,根本无法约束,因此将林邑军的阵势践踏扰乱。刘方趁机用精兵继续进攻,林邑军大败,被俘杀者超过万余人。
敌军一路败退,溃败百里。隋军一路追击,历区粟(今越南广治省广治河与甘露河合流处)、六里,前后数战,每战必捷,遂至大缘江(今越南中部香江)。
此时林邑人对于隋军,根本无计可施。他们集中兵力沿江据守,不过却没太多长进,还是使用老方法,立栅据险,与隋军对抗。对于破除这种江边的立栅,隋军已富有经验,因此并不困难的又击败了对方,渡过了大缘江。
刘方率军追击,屡战屡胜,追过了马援铜柱以南,用了八天就打到林邑的国都典冲城。三月,屡战屡败的梵志放弃了都城,逃到了海。刘方率军入城,缴获用金子铸成的庙主牌位十八枚。
杨广闻询大喜,此乃其登基之后第一次开疆拓土之功,因此杨广不准备见好就收,而是下令在林邑故地设置三州十二县,使其永为中国之土。
正常情况下,隋军大胜,此战便也结束了。不过刘方所部都是北方人,肯定不能在此长居,因此刘方乃刻石立碑,记录了这次征伐的功绩,尔后带着战利品返回。
朝廷又安排刘方的司马李纲,率领岭南本地的士兵,前来接手林邑,处置林邑被占领后的事务。
南土炎热多雨,北方士卒,包括刘方本人在内,都不能适应此种特殊气候,士卒多患脚肿,死者十之四五。而刘方到了交趾,也患病死于途中。
刘方一死,军心涣散。
而隋军主力撤后,林邑王梵志则趁机卷土重来,赶走了留守的隋军,重占国土。至此,刘方数年攻伐林邑之成果,毁于一旦。