A hírre Európában keresztes hadjáratot hirdettek, de seregek nem érkeztek, jöttek viszont katonák és népfelkelők Cseh- és Lengyelországból, Moldvából, Szerbiából. Az olasz inkvizítor és hitszónok Kapisztrán János magyar földön szervezett keresztes sereget, Hunyadi pedig zsoldossereg élén sietett a várparancsnok Szilágyi Mihály megsegítésére. Így a törökkel csupán három erő tudott szembeszállni: Hunyadi saját költségen felszerelt hada, Kapisztrán János keresztesei és Kórógyi János macsói bán – Hunyadi szövetségesének – serege.
Dugovics és a déli harangszó
Az ostrom 1456. július 4-én kezdődött. A törökök a félkörben körülvett várat a Duna és a Száva közti síkságról ágyúzták, komoly károkat okozva a falakban, és kétszáz összeláncolt hajóval teljes szélességében lezárták a Dunát Zimony fölött. Július 14-én Kapisztrán és Hunyadi flottája áttörte a hajózárat, így megnyílt az út a felmentő sereg előtt a szorongatott várba. Hunyadi saját serege élén a védőkhöz csatlakozott, a keresztesek a Száva bal partján ütöttek tábort. A törökök július 21-én indították meg a döntő rohamot a szinte teljesen rommá lőtt vár ellen, öldöklő küzdelemben áttörték a külső védvonalat, és már a belső várat ostromolták.
A legenda szerint egy Dugovics Titusz nevű magyar vitéz életét feláldozva sodort a mélybe egy törököt, aki a vár falára ki akarta tűzni lófarkas zászlót. A közismert történetről ma már tudjuk, hogy nem igaz, mégis a hazaszeretet és az önfeláldozás jelképévé vált. Másnap a Száva bal partjáról átkelő keresztesek, élükön a hetvenéves Kapisztránnal támadásba lendültek, miközben Hunyadi a várból kitörve a török ágyúkat foglalta el, majd együttesen szétszórták az ostromlók derékhadát. A török sereg felszerelését hátrahagyva menekült, a szultán pedig egyes feljegyzések szerint a kudarc miatt véget akart vetni életének.
A győzelem után a török terjeszkedés hét évtizedre megtorpant, a délvidéki erősséget csak 1521-ben tudta bevenni I. Szulejmán.