One siege of a single city lasted 21 years
The Ottoman Empire besieged Venetian-held Candia, on Crete, from 1648 to 1669. Both sides dug in for so long that the fighting outlasted entire political careers back home. The Ottomans finally took the city, ending over four centuries of Venetian rule on Crete.