S'il existait dès le paléolithique des implantations humaines aux environs de la ville actuelle, l'histoire connue de
Budapest remonte à la cité romaine d’Aquincum, fondée aux alentours de 89 sur le site d'un ancien campement de Celtes Eravi, où un rétrécissement du Danube facilite son franchissement, et proche de ce qui allait devenir Óbuda. De 106 jusqu'à la fin du ive siècle, la cité est la capitale de la province de la Pannonie inférieure (en latin Pannonia) avant de tomber aux mains des Huns et d'Attila, puis de leurs successeurs, les Goths et les Lombards. Aux environs de l'an 600, et pendant trois siècles, la région est dominée par les Avars.
Venus de l'Oural, les ancêtres des hongrois, les Magyars, conduits par le prince Árpád dont la dynastie régnera jusqu'au xiiie siècle, atteignent le bassin des Carpates en 896 et viennent peupler le secteur d'Óbuda. La nation hongroise est fondée un siècle plus tard, en l'an 1000, avec le couronnement de son premier roi, Étienne Ier, qui se convertit au catholicisme et sera canonisé sous le nom de saint Etienne. Malgré la destruction presque totale de la ville, suite à une invasion mongole en 1241, Béla IV rompt avec la dynastie des Árpád qui avaient dirigé leur royaume depuis d'autres cités, et installe la capital à Buda en 1247 où il fait construire un château. La ville ne commence toutefois à se développer réellement qu'avec l'arrivée sur le trône des princes angevins. Après le déplacement de la résidence royale à Visegrád en 1308, la ville devient la capitale du pays en 1361. Sigismond de Luxembourg introduit le style gothique à Buda où, à l'instar du palais d'été de Visegrád, le Palais royal connaît une importante reconstruction. La ville atteint son âge d'or au xve siècle pendant le règne de Mathias Corvin, dont l'épouse Béatrice de Naples, fait de
la Hongrie un des foyers actifs de la Renaissance. Siège du Parlement à partir de 1298, Pest, sur l'autre rive du fleuve, affirme sa vocation commerçante.
Après la défaite de Mohács, la conquête de la majeure partie du pays au xvie siècle par l'Empire ottoman brise le dynamisme des deux citées pendant près de 150 ans. En 1526, Pest tombe aux mains de l'envahisseur par le sud. Buda, défendue par son château, connaît le même sort 15 ans plus tard. Alors que Buda devient le siège d'un gouverneur turc, Pest est désertée par une grande partie de ses habitants lors de sa reconquête en 1686 par l'armée impériale menée par Charles V de Lorraine. Les Habsbourg étaient restés rois de Hongrie depuis 1526, malgré la perte de la majorité du pays.
Au cours des xviie et xviiie siècles, malgré le Grand Incendie de 1723 et une inondation dévastatrice en 1838 qui fit 70 000 morts, Pest connaît un fort taux de croissance grâce à un commerce très actif, contribuant très majoritairement à la croissance combinée des trois villes. L’université de Nagyszombat (aujourd'hui, Université Loránd Eötvös), transférée à Buda en 1777 puis à Pest en 1784, joua un rôle important dans l'essor des deux cités. La reconstruction de Buda, Pest et Óbuda ne commence vraiment que pendant la deuxième moitié du xviiie siècle ; l'impératrice Marie-Thérèse et l'archiduc Joseph (le gouverneur de l'empereur), contribuent à cette modernisation, mais la lenteur des réformes entraîne un soulèvement nationaliste en 1848. La fusion des trois villes sous une administration commune prend effet une première fois en 1849, année de l'ouverture du Széchenyi Lánchíd, sous l'impulsion du gouvernement révolutionnaire, avant d'être révoquée suite à la reconstitution de l'autorité des Habsbourg. Francois-Joseph Ier écrase la révolte mais se voit contraint en 1867 de signer un compromis qui autorise les habitants de la Hongrie à former leur propre gouvernement. La fusion des trois villes est entérinée définitivement en 1873 par le gouvernement royal autonome hongrois issu de ce même compromis et donne naissance à une véritable capitale en réunissant Buda, Pest et Óbuda.
En 1900, la population de Pest dépasse celles de Buda et Óbuda réunies. Au cours du siècle suivant, la population de Pest sera multipliée par vingt, alors que celles de Buda et d'Óbuda seront quintuplées. La population totale de la capitale unifiée est multipliée par sept sur la période 1840–1900, atteignant 730 000 habitants.
Au cours du xxe siècle, la plupart des industries du pays venant se concentrer dans la ville, la croissance de la population se poursuit, touchant principalement l'agglomération. Ainsi, la population de Újpest est plus que doublée sur la période 1890–1910, et celle de Kispest est quintuplée entre 1900 et 1920. Les pertes humaines liées à la Première Guerre mondiale, et la perte de plus des deux tiers du territoire de l'ancien royaume en 1920, ne causent qu'un trouble temporaire : Budapest demeure la capitale d'un État certes plus petit mais désormais souverain. En 1930, la ville compte un million d'habitants, plus 400 000 en agglomération.
Le désir de reconquérir les territoires perdus poussent la Hongrie à soutenir l'Allemagne nazie. Lors de la Seconde Guerre mondiale, les juifs sont rassemblés dans le ghetto de Budapest. Environ un tiers des 250 000 habitants juifs de Budapest meurent suite au génocide nazi perpétré pendant l'occupation allemande de 1944. Entre décembre 1944 et la fin de janvier 1945 dans des razzias nocturnes, les miliciens du Parti des Croix fléchées arrêtent les Juifs dans le ghetto ainsi que les déserteurs de l'armée hongroise ou ennemis politiques, les exécutent le long des rives du Danube et jettent les corps dans le fleuve. Une plaque commémorative a été posée le 16 avril 2005 en bordure du fleuve où des chaussures appartenant aux victimes sont fleuries.
Malgré cela, Budapest est aujourd'hui la capitale européenne qui a le ratio de citoyens juifs par habitant le plus élevé. En 1944, le diplomate suédois Raoul Wallenberg a sauvé au moins 10 000 juifs hongrois.
Budapest subit de graves dommages en 1945 lors de sa libération par l'armée rouge qui en profite pour installer un pouvoir communiste. À la fin de la guerre, la vieille ville fut reconstruite pierre par pierre. Budapest avait été presque entièrement détruite par les bombardements : 74 % des habitations et 97 % des usines avaient été ravagées. Au 1er janvier 1950, l'agglomération
de Budapest connaît une expansion significative : de nouveaux arrondissements sont créés à partir des villes voisines. Durant les années 1950 et 1960, la ville se remet du siège soviétique de 1944, devenant, dans certaines limites, une vitrine de la politique pragmatique pratiquée par le gouvernement communiste du pays (1947-1989). La démocratisation est stoppée par l'insurrection de Budapest en 1956 et l'intervention militaire de l'Union soviétique qui, selon les chiffres officiels publiés par le gouvernement après la chute du communisme, a fait 20 000 victimes dans la population civile, et entraîné l'exil de 160 000 citoyens hongrois.
À partir des années 1980, Budapest, tout comme l'ensemble du pays, connaît une émigration croissante couplée à une décroissance naturelle de sa population. En 1989, suite à des manifestations répétées, le pouvoir communiste tombe, laissant place à une démocratie parlementaire.