황하 하류에 상(商)이라는 부족이 있었다. 전설에 따르면 상나라의 조상인 계(契, 음: 시에)는 요순 시대에 우(禹)와 함께 홍수를 다스렸으며, 큰 공을 세운 인물이었다. 이후 상 부족은 축산업이 빠르게 발전하여 하왕조 말기, 탕(湯)이 수장이 되었을 무렵에는 이미 강력한 부족으로 성장해 있었다.
하왕조는 약 400여 년간 통치하다가 기원전 16세기에 이르러 하왕조의 마지막 왕인 하걸(夏桀, 음: 지에)이 즉위하였다. 하걸은 악명 높은 폭군으로, 노예주 귀족들과 함께 백성들을 잔혹하게 억압하였으며, 노예들에 대한 탄압은 더욱 심했다. 하걸은 또다시 대규모 토목 공사를 벌이며 궁전을 짓고, 사치스럽고 타락한 삶을 살았다.
신하 관룡방(關龍逄, 음: 방)이 하걸을 간언하며 이렇게 계속하면 민심을 잃게 될 것이라고 경고했다. 하걸은 격노하여 관룡방을 처형했다. 백성들은 하걸을 극도로 증오하며, "이 태양이 언제 죽을 것인가? 차라리 너와 함께 죽겠다!"고 저주했다.
상탕은 하걸의 지나친 부패를 보고 하왕조를 멸망시킬 결심을 하였다. 겉으로는 하걸에게 복종하는 척하면서, 속으로는 자신의 세력을 꾸준히 확장해 나갔다.
당시 부족의 귀족들은 귀신과 신령을 믿는 데 매우 집착하여, 천지와 조상에게 제사를 지내는 일을 가장 중요한 일로 여겼다. 상 부족 근처에는 '갈(葛)'이라는 부족이 있었는데, 그 부족의 수장인 갈백(葛伯)이 제사를 제때 지내지 않았다. 탕은 사람을 보내 갈백을 꾸짖었다. 갈백은 "우리가 가난해서 제물로 바칠 가축이 없습니다."라고 답했다.
탕은 소와 양 무리를 갈백에게 제물로 주었다. 그러나 갈백은 소와 양을 도살하여 먹어 치우고도 제사를 지내지 않았다. 탕이 다시 사람을 보내 꾸짖자, 갈백은 "식량이 없는데 무엇으로 제사를 지내겠습니까?"라고 말했다.
탕은 또다시 사람을 보내 갈백의 밭을 갈아주게 했고, 노약한 자들을 보내 일하는 사람에게 술과 음식을 나르게 했다. 그런데 중간 길에서 갈백이 그 술과 음식을 빼앗아 갔을 뿐 아니라, 음식을 나르던 어린 소년까지 살해하고 말았다.
갈백의 이러한 행동은 모두의 분노를 자아냈다. 탕은 이 사건을 빌미로 군대를 보내 갈 부족을 먼저 멸망시켰다. 이어 주변의 여러 부족들을 연이어 정복해 나갔다. 상탕의 세력은 점점 커져 갔지만, 어리석은 하걸은 전혀 눈치채지 못했다. 상탕의 아내가 시집올 때 따라온 시종 노예 중에 익인(伊尹, 음: 인)이라는 사람이 있었다. 전설에 따르면 익인은 처음 상탕 집에 올 때 요리사로 일하며 상탕을 섬겼다. 나중에 상탕은 익인이 일반적인 노예와 다르다는 것을 점차 알아차렸고, 대화를 나눈 끝에 그가 의도적으로 시종 노예로 위장해 자신을 찾아왔음을 알게 되었다. 익인은 탕에게 많은 치국 이치를 설명했고, 탕은 즉시 그를 자신의 조수로 발탁했다.
상탕과 익인은 하걸을 토벌할 일을 상의했다. 익인이 말했다. "지금 하걸은 여전히 힘이 있으니, 우선 조공을 바치지 말고 그 반응을 시험해 봅시다."
상탕은 익인의 계책에 따라 하걸에게 조공을 바치는 것을 중단했다. 하걸은 과연 크게 노하여, 구이(九夷) 부족들에게 군대를 보내 상탕을 공격하라고 명령했다. 익인은 이민족들이 여전히 하걸의 지휘를 따르는 것을 보고, 서둘러 하걸에게 죄를 뉘우치고 조공을 다시 바치기 시작했다.
일 년 후, 구이 부족들 중 일부가 하왕조의 착취와 강탈을 더 이상 참지 못하고 점차 하왕조에서 이탈하기 시작했다. 비로소 상탕과 익인은 본격적인 공격을 결심했다.
하계(夏啓) 이후로 동일한 성(姓)을 이어왕위를 전수한 지 이미 400여 년이 지났으므로, 하왕조를 무너뜨리는 것은 결코 쉬운 일이 아니었다. 상탕과 익인은 상의를 거듭한 끝에 상군 장병들을 소집하고, 탕이 직접 장병들에게 맹세의 연설을 하기로 결정했다.
탕은 말했다. "나는 감히 반란을 꾀하는 것이 아닙니다. 진실로 하걸이 악행을 일삼아, 하늘이 나로 하여금 그를 멸망시키라 명령하셨으므로, 나는 하늘의 뜻을 따르지 않을 수 없습니다!" 이어 그는 상벌의 군기(軍紀)도 공포했다.
상탕은 하늘의 뜻을 내세워 장병들을 동원하였고, 장병들 또한 하걸의 빠른 몰락을 간절히 바라기 때문에 전투에 매우 용감하게 임했다. 하군과 상군은 명조(鳴條, 현재의 산시성 운성 안읍진 북쪽)에서 한 차례 싸움을 벌였고, 하걸의 군대는 패배했다.
마지막으로 하걸은 난초(南巢, 현재의 안후이성 조현 서남쪽)로 도망쳤고, 탕이 그곳까지 추격하여 하걸을 난초에 유배시켰으며, 하걸은 그곳에서 죽을 때까지 있었다.
이렇게 하여 하왕조는 새로이 세워진 상왕조에 의해 대체되었다. 역사적으로 상탕의 하왕조 정벌을 '상탕혁명(商湯革命)'이라 부르는데, 고대 지배 계급이 왕조의 교체를 천명(天命)의 변화라고 표현했기 때문에 '혁명(革命)'이라 불렀다. 이것은 오늘날 우리가 말하는 '혁명'과는 완전히 다른 개념이다.