Budát 1541-es eleste óta többször is megpróbálták az oszmán csapatoktól visszaszerezni (1542, 1598, 1602-’3, 1684), de, mint az köztudott, a művelet csak 1686-ban járt sikerrel. A magyarországi hadszíntéren (amely alatt itt a Magyar Királyságot és a Hódoltság területét értjük) felvonultatott mintegy 100 000-es koalíciós haderőből két oszlop vonult az akkori vilajet központ alá: a császáriak egy része és a bajor csapatok.
A város alatti műveleteket I. Lipót császár sógora, Lotharingiai Károly irányította. Jó katonának bizonyult, harcolt például Montecuccoli parancsnoksága alatt Szentgotthárdnál 1664. augusztus 1-jén, 1676-ban pedig már a császári csapatok főparancsnoka volt. Nem véletlen, hogy Bécs felszabadítása után a sógora őt bízta meg a birodalmi csapatok vezetésével. (Hadinaplóját, ami részletes betekintést ad az eseményekbe, 1986-ban a HM HIM gondozásában adták ki.)
A támadóknak nem volt egyszerű dolguk. A források elégtelen számú lövegről, hellyel-közzel kijavított falakról, és nem nagy, kb. 12 000 fős helyőrségről adnak hírt, azonban a védelem irányítója Arnot Abdurrahman pasa (az utolsó budai szandzsákbég) volt, Kara Musztafa nagyvezír jobbkeze, aki Bécs alatt is kitüntette magát a harcokban.
Június 17-én érkeztek az első koalíciós alakulatok a térségbe. Pestet az oszmánok még aznap kiürítették, Budát pedig a császári csapatok már 18-án körülzárták. Innen számítva az ostrom két és fél hónapig tartott, mely alatt, a támadók a 17. sz.-i ostromtechnika teljes tárházát felvonultatták: cirkum- és kontravallációt, lövegállásokat, közelítőárkokat, aknákat ástak stb. A művelet mindkét részről nagy áldozatokat követelt. A szeptember 2-i döntő roham előtt több általános támadásra is sor került (az elsőre, rögtön június 23-án), ezeket azonban a keményen védekező helyőrség visszaverte. Az idő pedig szorított: egy nagy létszámú török erősítés is megérkezett a városhoz, akiket csak nagy nehezen sikerült visszaverni.
Nem véletlen, hogy a sereg komoly tábori kórházzal is rendelkezett. Luca Antonio Portio, nápolyi orvos kapta a császári udvartól a megbízást, hogy gondoskodjon a koalíciós csapatok megfelelő egészségügyi ellátásáról. Anyagi fedezetként erre 10 000 forintot kapott, így sikerült tábori ágyakat, sátrakat, egyéb felszerelést vásárolni és személyzetet fogadni. A tábori kórházat – a benne felállíttatott 2000 ággyal – kétszer is átköltöztették: először a Szentendrei- majd pedig a Margit-szigetre, ahol az ostrom végéig működött. Az erőfeszítés nem volt hiábavaló: mintegy 6000 katona életét sikerült megmenteni.
Talán ennek is köszönhető, hogy a művelet sikeres volt. Szeptember 2-án Károly általános rohamot vezényelt. A támadók az Esztergomi rondellánál és a Bécsi kapun is betörtek a városba, azokat kiszorítani az oszmán helyőrség többé már nem tudta. Emberei mellett harcolva az utolsó napon halt hősi halált Abdurrahman pasa is. Buda elesett, és a Habsburg-török háborúnak ez a szakasza az 1699-es karlócai békével véget ért. Savoyai Jenőnek a várban ma lovasszobra-, Arnaut Abdurrahman pasának pedig síremléke áll.