Město leží na soutoku řek Lužnice a Nežárky v nadmořské výšce 407 m asi 30 km severovýchodně Českých Budějovic v okrese Tábor.
Původně souměstí dvou měst, Veselí nad Lužnicí a Mezimostí nad Nežárkou, se v roce 1947 spojila v jedno se společným jménem Veselí nad Lužnicí. Mezimostí dnes připomíná pouze železniční zastávka Veselí-Mezimostí, která leží asi 2 km od nádraží ve Veselí směrem na České Budějovice.
První zmínky o Veselí pocházejí z roku 1259. Tehdy patřilo k rožmberskému panství. Později přešlo do majetku krále a Karel IV. jej v roce 1362 povýšil na město. V roce 1468 bylo vypáleno. Od roku 1491 bylo Veselí opět majetkem Rožmberků. V roce 1660 bylo císařem darováno Schwarzenbergům a připojeno k třeboňskému panství.
K většímu rozvoji města došlo až po zavedení železnice v roce 1871, kdy se stalo důležitým železničním uzlem.
Mezimostí bylo již v roce 1360 samostatnou osadou s tvrzí, která koncem 14. století zanikla. Stejně jako u sousedního Veselí
nastal rozvoj Mezimostí až se zavedením železnice. Na město bylo povýšeno až roku 1908.
Většina památek je soustředěna na protáhlém, svažujícím se náměstí. Nad ním ční v jižní vyvýšené části raně gotický farní kostel Povýšení svatého Kříže z poloviny 13. století. Na protější, nižší straně náměstí stojí renesanční radnice. V jejím sousedství je původně renesanční dům z druhé poloviny 16. století v němž je dnes umístěno městské muzeum. V západní frontě náměstí je bývalá významná poštovní stanice, zajímavý renesanční dům.
V muzeu je památník hudebního skladatele Karla Weise.
Na jižním okraji Veselí začíná trasa přírodovědné naučné stezky Veselské pískovny, procházející vytěženými pískovnami v sousedství města.
rezervace Borkovická blata
rezervace Vlkovský přesyp
městečko Lomnice nad Lužnicí
městečko Kardašova Řečice
město Soběslav
Horusický rybník