Hanoi sai oma ajaloo alguse 3. sajandist eKr, kui osa tänapäeva linnast oli ajaloolise Vietnami riigi Âu Lạc pealinn. Pärast Âu Lạc'i kokkuvarisemist oli linn osa Han-Hiinast. Aastal 1010 asutas Vietnami keiser Lý Thái Tổ tänapäeva Hanoi kesklinnas keiserliku Vietnami rahva Đại Viet'i pealinnaks, nimetades linna Thăng Longiks (sõna otseses mõttes "Tõusuv draakon"). Thăng Long jäi Đại Vietni poliitiliseks keskuseks kuni aastani 1802, mil Nguyễnide dünastia, viimane keiserlik Vietnami dünastia, kolis pealinnast Huế'sse. Linn nimetati 1831. aastal ümber Hanoi'ks ja oli Prantsuse Indotsiina pealinn aastatel 1902-1945. 6. jaanuaril 1946 määras Vietnami Demokraatliku Vabariigi Rahvusassamblee Hanoi uue iseseisva riigi pealinnaks.
, mis kestis esimese Indotsiina sõja (1946-1954) ja Vietnami sõja (1955-1975) ajal. Hanoi on olnud Vietnami Sotsialistliku Vabariigi pealinn alates 1976. aastast.