Doprava Krupka
Krupka má díky své poloze mezi městy Ústí nad Labem (asi 10 km) a Teplice (asi 5 km) výborné silniční spojení s těmito centry. Nedaleko Krupky se nacházejí i silniční hraniční přechody Cínovec a Petrovice do sousedního Německa. Přímo ve Fojtovicích je hraniční přechod pro pěší a cyklisty. Autobusová doprava je orientována na bližší Teplice (i několikrát za hodinu) více než na vzdálenější Ústí nad Labem (pouze několik spojů za den). Celkem 12 autobusových linek zde provozují dva dopravci, jimiž jsou Dopravní podnik Teplice a Dopravní podnik Ústeckého kraje. Jedná se o linky č. 585123, 585128, 585129, 585136, 585137, 585138, 585139, 585142, 585147, 585148 DPT a 02, 03, 18 DPÚK. Do roku 2007 mělo město vlastní linku městské autobusové dopravy.
Železniční doprava
Město protínají dvě železniční tratě. Hlavní je dvoukolejná elektrifikovaná trať č. 130 Ústí nad Labem - Chomutov, stanice Bohosudov. Druhou je regionální trať č. 132 Děčín - Oldřichov u Duchcova, zastávky Unčín, Bohosudov - zastávka, Krupka - město a Krupka. Bohužel tato železniční trať je už uzavřena a dobudoucna se plánuje cyklostezka.
Lanová dráha
Z městské částí Bohosudov, pouze několik desítek metrů od zastávky ČD Bohosudov - zastávka, vede dvousedačková lanová dráha na Komáří vížku. Lanovka byla postavena v letech 1950-1952 a se svými 2 348 m byla nejdelší lanovou dráhou ve střední Evropě bez mezistanice. Převýšení činí 482 m.