早在建衡元年、晉武帝泰始五年(269年)二月,晉武帝司馬炎就有了滅吳的志向。十一日,他除任命大將軍衛瓘、司馬分鎮臨淄、下邳,加強對孫吳的軍事布置外,又特地調任羊祜為荊州諸軍都督。當時,西晉和孫吳各有一個荊州,形成南北對峙局面。
天紀二年(278年),太傅羊祜向晉武帝當面陳述伐吳的計劃,晉武帝非常贊賞。
天紀三年(279年)四月,孫皓每次宴會群臣都要把大臣們灌醉。他設置了黃門郎10人,專門負責搜集大臣們的過失。每次宴會結束以後,這10個人就向孫皓匯報大臣們的過失,凡是大臣中有抵觸的、說了錯話的,都向孫皓舉報,嚴重的被判刑、處死,輕的也要當作罪狀記錄下來;有的被剝下臉上的皮,有的被挖去眼楮,因此朝廷上下人心相離,沒有人肯為孫皓盡力。
西晉名將、益州刺史王濬(濬通浚)上書請求速伐東吳,王濬對晉武帝司馬炎說︰「孫(皓)荒婬,凶暴反常,應當迅速地征討他。如果一旦孫(皓)死了,吳國又立了一個賢明的君王,那麼就成為我們的強敵了。我造船已經7年,每天都有船因腐爛而毀壞;我年已70,離死亡沒有幾天了。」實際上,此時王濬的年齡已有73歲,他仍然堅決要求率軍伐吳,可見其人老志不老。晉武帝于是下定決心伐吳。
十一月,晉朝大舉出兵討伐吳,派遣鎮軍將軍、瑯邪王司馬從涂中(今安徽滁州)出兵,安將軍王渾從江西出兵,建威將軍王戎出武昌,平南將軍胡奮出夏口(今湖北省武漢市),鎮南大將軍杜預出江陵,龍驤將軍王浚和巴東監軍魯國人唐彬從巴、蜀進軍,東西合計共有20余萬人。任命賈充為使持節、假黃、大都督,任命冠軍將軍楊濟協助賈充,作賈充的副手。賈充堅持陳述伐吳不利,而且自稱已經衰老,不能擔當元師的重任。晉武帝下詔說︰「你如果不去,那麼我就親自出征。」賈充不得已,于是接受了符節與斧,率領中軍向南駐扎在襄陽,負責各部隊的部署、調度與節制。
晉武帝太康元年(280年),也即孫皓天紀四年,孫權開創的東吳王朝,進入了最後階段。這年二月,王濬、唐彬打敗了丹陽監盛紀。
早在孫皓鳳皇元年、晉武帝泰始八年(272年),晉武帝司馬炎就命令王浚解散屯田軍,大量建造戰船。大戰船船身長度為120步,能容納2千余人,用木頭造成樓,築起望敵軍的高台,四面開出可以進出的門,船上可以騎著馬往來奔跑。
當時造般砍削下的木片,遮蓋了江面,順江水而下,吳國建平太守、吳郡人吾彥,拿著順江流而下的木片稟報孫皓說︰「晉國必然有攻吳的計劃,應當增加建平的兵力,以堵住要害地區。」孫皓不听,吾彥就用鐵鎖鏈橫攔江面,還打造了一丈多長的大鐵錐,暗中放進江里,用以阻止晉船東下。
王濬造了幾十個大木筏,每一個木筏,長、寬都有100余步。王濬讓人扎了許多草人,草人披鎧甲,拿兵器,放在大木筏上,讓水性好的人與木筏走在前面,遇到鐵錐,鐵錐就扎到木筏上,被木筏帶走了。王濬又造了許多大火把,火把長十幾丈,有幾十圍粗,用麻油澆在火把上,把火把放在船的前面,遇到鐵鎖就點燃火把,一會兒功夫,鐵鎖就被火把燒得融化而斷開,于是戰船就無所阻擋。十八日,晉武帝下詔書說︰「王濬、唐彬已經平定了巴丘,再與胡奮、王戎一同平定夏口、武昌,順長江長驅直入,直到秣陵。
孫皓听說晉將王渾領兵南下,就派丞相張悌,督率丹陽太守沈瑩、護軍孫震、副軍師諸葛靚率領部眾3萬人渡過長江迎戰。
這時候,王浚從武昌順著長江直接向建業進逼。孫皓派遣游擊將軍張象率領舟師1萬人抵抗。張象的部下望見王浚的旌旗就投降了。這時候,江中滿滿的全都是身披鎧甲的王浚的士兵,旌旗映照著天空,威猛的氣勢極其盛大。正是︰「旌旗器甲,屬天滿江,威勢甚盛,莫不破膽」(《晉書-王濬傳》),吳國人異常恐懼。
孫皓的寵臣岑昏,由于陰險狡詐、諂媚逢迎而爬上了九卿的地位。他喜好大興工程勞役,使眾人深受困苦與禍患。等晉兵就要到達的時候,宮中親近的幾百名隨從官吏向孫皓叩頭請求說︰「北方的敵軍一天一天地逼近了,而我們的士兵卻不拿起武器抵抗,陛下您打算怎麼辦呢?」孫皓問︰「是什麼原因?」眾人回答說︰「正是由于岑昏的緣故。」孫皓只說了一句︰「要是這樣,就拿這個奴才去向老百姓謝罪吧!」眾人答應「是!」從地上爬起來就去抓岑昏,等到孫皓後悔,不斷地派人去追趕制止,群臣已以「今日之禍,皆岑昏之罪」,將他碎尸萬段。
這時,王渾、王浚以及瑯邪王司馬都已逼近建業附近。吳國司徒何植、建威將軍孫晏都把印璽、符節送到王渾那里投降了。孫皓為了活命,采用光祿勛薛瑩、中書令胡沖等人的計謀,分別派遣使者向王渾、王浚、司馬奉上書信請求投降。孫皓又給大臣們一封信,在信中深深地譴責了自己的罪過,還說︰「當前,大晉平治四海,這正是杰出優秀的人材發揮、施展其氣節操守的時期,不要因為改朝換代就因此喪失了志向。」孫皓的使者先把印璽送到瑯邪王司馬那里。
三月十五日,王浚的舟師經過三山磯(今南京西南),8萬士兵乘著相連百里的戰船,擂鼓吶喊進入石頭城(今南京)。
孫皓仿效劉禪的做法︰備亡國之禮,素車白馬,肉袒面縛(兩手反綁),餃璧牽羊,大夫衰服,士輿櫬(把棺材裝在車上),率領太子孫瑾等21人來到王濬營門。王濬親解其縛,接受寶璧,焚燒棺櫬。並派人將孫皓送到晉都。
據《晉陽秋》記載︰「濬收其圖籍,領州四,郡四十三,縣三百一十三,戶五十二萬三千,吏三萬二千,兵二十三萬,男女口二百三十萬,米谷二百八十萬斛,舟船五千餘艘,後宮五千餘人。」殘存的文武百官,也出城投降。至此,東吳政權滅亡。三國時代也就此結束。
這里的《晉陽秋》實際上是應該是《晉春秋》,因當年作者孫盛(著名的東晉史學家),為避諱東晉元帝司馬睿妃鄭阿春,所改。
晉朝廷听到吳已平定的消息,大臣們都去慶賀,為晉武帝祝壽。晉武帝手持酒杯流淚說︰「這是太傅羊祜的功勞。」票騎將軍孫秀沒有和大家一起慶賀,他面朝南方流淚說︰「從前,先主孫策剛滿20歲,以一個校尉的身份創下了基業,如今後主把整個江南之地都拋棄了,宗廟陵墓從此將成為廢墟,悠悠青天啊,這究竟是誰造成的啊!」孫秀是早年流亡到晉的東吳宗室。
太康元年(280年)四月二十八日,晉武帝司馬炎下詔,賜予孫皓爵位歸命侯。29日,大赦天下,改年號為太康。晉武帝派使者犒賞王濬的部隊,聚餐飲酒5天。瑯邪王司馬派使者送孫及他的宗族去洛陽。