
Pierwsze wzmianki o mieście pochodzą z ok. 1148 roku. Zawichost był grodem kasztelańskim i osadą targową położoną w pobliżu przeprawy przez Wisłę. Od końca XII w. był siedzibą archidiakonatu. W 1205 w bitwie pod Zawichostem, książęta Leszek Biały i Konrad Mazowiecki pokonali wojska księcia halickiego Romana, który w czasie tej bitwy poległ.
Dokładna data nadania Zawichostowi praw miejskich nie jest znana, ale przyjmuje się, że nastąpiło to przed rokiem 1255. Zawichost był niszczony podczas kolejnych najazdów tatarskich w 1241, 1259 i 1500. Miasto jednak szybko odbudowywało się po klęskach.
W 1257 roku książę Bolesław Wstydliwy nadał miastu oraz 25 okolicznych miejscowości założonemu w Zawichoście klasztorowi klarysek przywilej lokacyjny. Przywilej lokacyjny nadawał Zawichostowi 44 łany, jako uposażenie, a także prawo do odbywania targów, warzenia piwa i pobierania cła od miedzi i ołowiu spławianych Wisłą. Od XIV w. Zawichost był miastem królewskim i siedzibą starostwa niegrodowego. Za panowania Kazimierza Wielkiego klasztor został umocniony. Król wybudował tu także obronny zamek, który miał strzec przeprawy przez Wisłę. Zawichost miał w tym czasie 540 mieszkańców.
Największy rozkwit miasta przypadł w wieki XV i XVI. Zawichost położony był w tym czasie na szlaku handlowym prowadzącym z Krakowa na Litwę i Ruś. Miasto korzystało z ceł pobieranych od towarów spławianych na Wiśle. Rozwijało się rzemiosło (m.in. piwowarstwo). W 1564 w mieście znajdował się ratusz, łaźnia, słodownia, 4 jatki rzeźnicze oraz 126 domów.
Zawichost został zniszczony podczas potopu szwedzkiego w 1655 roku i najazdu Rakoczego w 1657 roku. Najeźdźcy spalili wówczas zamek, którego nieodbudowane mury runęły do Wisły w 1813 roku, podczas wielkiej powodzi. W 1666 roku miasto nawiedził ogromny pożar i zaraza – nieszczęścia, które uśmierciły większość mieszkańców. Ich ciała pochowano prawdopodobnie na niewielkim wzgórzu w południowej części miasta, na którym stoi dziś żelazny krzyż, a obok betonowy austriacki bunkier z I wojny światowej. Po tych wydarzeniach miasto podupadło. Jego problemy pogłębiły się po rozbiorach Polski, po których Zawichost stał się miastem pogranicznym.
Na początku XVIII w. w pobliżu Zawichostu powstało miasto Starostów (przemianowane później na Prosperów), zamieszkane głównie przez Żydów. W 1820 zostało przyłączone do Zawichostu. Ustalił się wówczas podział na położone przy Wiśle „polskie miasto” i oddalone nieco od rzeki „żydowskie miasto”. Granicę wyznaczał murowany krzyż stojący przy dzisiejszej ul. Żeromskiego3.
W 1827 połączone miasto miało 281 domów (jednak tylko 5 murowanych) i 2 320 mieszkańców.W Zawichoście każdego tygodnia odbywały się dwa targi. W ciągu roku w mieście było 12 jarmarków. W 1888 Zawichost utracił prawa miejskie. W XIX w. w mieście funkcjonowały: cegielnia, garncarnia, 2 wapienniki oraz zakłady rzemieślnicze. W 1926 Zawichost odzyskał prawa miejskie.
W czasie okupacji niemieckiej Niemcy utworzyli tutaj getto, w którym przetrzymywanych było ok. 5 tysięcy Żydów. Funkcjonowało ono do 22 października 1942, dnia, w którym Niemcy wywieźli jego mieszkańców do obozu zagłady w Bełżcu.
W 1944 w Zawichoście toczyły się zacięte walki o przyczółek na Wiśle. Podczas walk miasto zostało niemal doszczętnie zniszczone. W latach powojennych Zawichost odbudowano.
W latach 1975-1998 Zawichost administracyjnie należał do woj. tarnobrzeskiego.