肅宗乾元二年(759)年底,杜甫終於來到成都。第二年春天,在一些親友的幫助下,他在成都西郊的浣花溪畔建築了一座草堂。詩人漂泊多年,至此才算有了一個安身之所,因此寫了不少描寫村居樂趣的詩,如《客至》等。代宗寶應元年(762),杜甫在成都尹兼禦史丞嚴武的資助下擴建了草堂,開辟了田地,帶著幾個孩子種菜種藥,養雞養鵝,儼然像個老農一般。廣德二年(764),嚴武向朝廷舉薦杜甫為節度參謀、檢校工部員外郎,後人因稱杜甫為“杜工部”。杜甫入嚴武幕中六個月,因不習慣幕僚生活,又回到草堂。在成都這一段時期,杜甫生活比較安定,但他並沒有忘記貧苦受難的人民,寫下了《枯棕》、《病橘》等詩,對人民的痛苦表示深切的同情。最有名的,則是《茅屋為秋風所破歌》。
永泰元年(765)四月,嚴武去世,杜甫失去依靠,不得不於五月率家人離開草堂,乘舟東下,九月到雲安,第二年的暮春抵達夔州。在這裏,他受到夔州都督柏茂琳的照顧,暫時住了下來。他感到自己越來越老,就更抓緊時間多寫詩,不到兩年的時間,就寫下了430多首詩。這些詩篇不僅內容十分豐富,而且在藝術上達到了登峰造極的地步,被後世奉為寺臬,特別是七律詩,如《登高》、《閣夜》等,悲壯蒼涼,沉鬱雄放,千古不朽。
大曆三年(768)正月,杜甫感到自己的身體越來越差,就想回河南老家。他先從夔州到江陵,卻因河南發生兵亂而受阻。半年後,他改道抵達湖北公安,年底漂泊到了湖南嶽陽。這時,他的健康狀況更差,瘧疾、肺病、風痹、糖尿病等不斷地折磨著他。為了投靠親友,他不得不再向南行。大曆四年(770)四月,軍閥臧玠在潭州作亂,兵荒馬亂之中,已經折回潭州的杜甫隻好再往南逃。船行到耒陽,由於江水陡漲,交通不便,杜甫一家人餓了五天五夜,幸虧縣令聶某聞訊後送來牛肉白酒,才免於俄死。船隻無法前進,杜甫隻好又折回潭州。就在這一年的冬天,杜甫病死在由潭州到嶽陽一條破船上。臨終前,他支撐著身子寫下了《風疾舟中伏枕書懷呈河南親友》這首長達七十二句三百六十字的五言排律,詩中說:“戰血流依舊,軍聲動至今。”一直到去世,這位憂患一生的偉大詩人也沒有忘記他多災多難的祖國和受苦受難的人民。