熊槐是楚威王之子,公元前328年繼承王位,史稱楚懷王。同年,魏趁楚喪,伐楚取徑山,楚未有反擊。楚國自楚肅王開始,經過近60年的休養生息,到楚懷王即位時,國勢達到頂峰,與先後崛起的齊秦並列爲三大強國,楚國成了當時世界上最大的國家,也是當時物產最豐富,人口最衆多,軍隊最強盛的國家。公元前323年,楚國打着送魏公子高返回魏國的旗號,派大司馬昭陽帶兵攻入魏國,在襄陵大破魏國軍隊,取得決定性的勝利,奪取了魏國的八座城池,一血徑山之恥。
楚國正值歲末冬天,到處下起了鵝毛大雪,天寒地凍。楚懷王叫人在宮殿裡點上爐火,燒得旺旺的,又穿上厚厚的皮大襖,還是覺得身上發冷,直打寒戰。突然,他沉思了一會兒,良心有些發現,設身處地,不免想起了他的臣民們:我把爐火點得這麼大,身上還穿着這麼厚的皮襖,竟然仍然很冷,那我的子民們既沒有爐火烤,又沒有皮襖穿,豈不是更冷得難以忍受?這時的楚懷王心情非常之好,也顯得非常慷慨,於是頒下旨令,給全國的貧苦百姓和遊客送去取暖的煤炭。人們在得到君主送來的燃料後,很是高興,也非常感動,十分感激楚懷王,都稱讚他是位好國王。這就是“雪中送炭”典故的最初由來。
戰國時期,各諸侯國之間經常互相攻伐,趙國憑藉武力不斷侵犯楚國。此時楚國人杜赫來見懷王,聲言他能說服趙國跟楚國和好。楚懷王非常高興,準備把杜赫封五大夫,然後派他前往趙國。大臣陳軫知道了這件事,向楚王獻計說:假如杜赫不能完成跟趙國通好的使命,大王授給他五大夫的爵位,這豈不是無功受祿了嗎?楚懷王聽陳軫說得有理,便問:那你說該如何辦?陳軫說:大王最好以十輛兵車,派杜赫去趙國,等他完成了使命,封爲五大夫。楚懷王採納了陳軫的計策,用十輛兵車送杜赫去趙國。杜赫見楚懷王不提封爵之事,十分生氣,乾脆拒絕出使趙國。於是陳軫向楚王說:杜赫不接受出使趙國的使命,這正表明他心懷鬼胎,他的目的是想騙取爵位,現在見大王不給爵位,他就乾脆不去了。
楚懷王任用昭陽、靳尚、上官大夫、昭睢、莊蹻、唐昧、屈原、昭滑、陳軫、蘇代、田忌、公孫衍等人,楚國一度人才濟濟,國勢大盛。楚懷王和唐昧積極變法,恢復了楚悼王、吳起時期的許多法令,調整楚國矛盾重重的各種利益集團的力量對比,抑制楚國的貴族集團,改革觸動了權貴階層的利益,遭到了他們的抵抗,改革失敗。
楚懷王十年(公元前319年),魏惠王見楚懷王已壓倒齊國,便與韓宣惠王迅速倒向楚國,表示魏國一直是跟隨楚國的,秦國的強迫不能使魏國脫離楚國,勸楚懷王伐秦。懷王在壓倒齊、魏兩個大國後,本來就有意打擊日漸強大的秦國,楚懷王任用公孫衍代表自己爲總聯絡人,組織合縱攻秦。公孫衍是魏人,從楚入魏,與魏惠王商議攻秦大計。魏惠王罷免魏相張儀,任命公孫衍爲新的魏相,並驅逐張儀回秦。在公孫衍的穿梭下,楚、齊、趙、魏、韓、燕、義渠很快就形成了七國合縱攻伐秦國的局面。
公元前318年,韓趙魏燕等國公推楚懷王爲縱長,從東西兩個方向攻秦。楚懷**名大噪,儼然成爲魏惠王之後的又一位霸主。但由於列國各有異心,合縱爲秦所破。這時的天下形成了齊、楚、秦三大勢力,而齊、楚間形成了聯盟。公元前313年,齊楚聯軍攻取秦的曲沃,斬斷了秦東出的觸角。
公元前312年,秦國張儀欺騙懷王要其以斷絕齊國之交換取秦國割讓六百里商於之地,懷王中計,與齊國斷交後只得六裡地。懷王惱怒不已,發兵進攻秦國,被魏章大破于丹陽,懷王再召集全國的部隊,發動進攻,再慘敗於藍田,其後前311年秦國攻取召陵,三戰皆敗,韓魏趁機進攻楚國在中原的領土,楚國大國地位瓦解,從此走向沒落。公元前306年,楚國乘越內亂的時候,聯合齊國進攻越國,佔領越國位於原吳國故地的國都,殺死越王無疆,把原來吳國一直到浙江的土地全部攻下,並設江東爲郡。越國因此分崩離析,殘部逃往越國故地,各族子弟們競爭權位,有的稱王,有的稱君,居住在長江南部的沿海。
公元前301年,齊聯合韓魏大敗楚軍於垂沙,與此同時,秦也出兵大敗楚國。楚國進一步沉淪。公元前299年,秦國攻佔了楚國八座城池,秦昭襄王約懷王在武關會面。懷王不聽昭睢、屈原勸告,決定前往武關,結果被秦國扣留。秦王逼迫他割地保命,被仍肩負國家責任感的楚懷王嚴詞拒絕。秦無法達成挾持楚懷王輕鬆拿到楚國領地的夙願,無奈下只能一直囚禁楚懷王。
懷王被扣留期間,楚人立太子爲王,是爲楚頃襄王。公元前297年,楚懷王逃走,秦人封鎖通往楚地的道路。懷王逃到趙境,趙國不敢收留他,懷王企圖逃往魏國,但被秦國追兵捉回。公元前296年,楚懷王憂鬱成疾,命喪咸陽。秦國把遺體送還楚國,“楚人皆憐之,如悲親戚”。公元前278年,秦國大將白起帶兵南下,攻破了楚國國都。屈原亦在同年五月五日這天投汨羅江自殺。