Roskilde blev mod slutningen af vikingetiden anlagt på et højtliggende moræneplateau i bunden af Roskilde Fjord. Den tidlige bydannelse var omgivet af to erosionsdale med vandløb fra en række meget vandførende kilder, hvor der måske har ligget et hedensk helligsted. Ved plateauets rand, hvor domkirken ligger i dag, faldt terrænet kraftigt mod middelalderens strandlinje ca. 700 m mod nord. Byen opstod formodentlig som en handelsplads, hvor landtrafikken mellem Øst- og Vestsjælland krydsede bunden af den sejlbare fjord. Her havde bønderne fra Sømme Herred også tingsted, og Danmarks første konger kan have bygget kirke og sandsynligvis kongsgård her. Dog voksede den egentlige bydannelse først frem i 1000-tallet. Roskilde formodes i lighed med byer som Viborg, Lund og måske Odense at være anlagt nær ældre hedenske kult- og samlingspladser som en strategisk beliggende magtbase for kongemagten og kirken.
I 1022 blev Gerbrand udnævnt til Roskildes første biskop, og byen blev således bispesæde. Fra denne periode optræder bynavnet Roskilde på mønter fra kong Knud den Stores regeringstid (1018‑35).
Svend Normand (biskop 1074-88) byggede en totårnet frådstenskatedral, hvortil var knyttet en katedralskole og et klostersamfund på 15 kannikker. Den tyske historiker Adam af Bremen beskrev i ca. 1070 Roskilde som Sjællands største by og danernes kongesæde. Trods udvidelsen af domkirkekomplekset tabte Roskilde kampen om positionen som ærkebispedømme til Lund 1103‑04. Roskilde inddeltes i 14 sogne, og byen voksede omkring disse kirkesamfund, der var afhængige af handel og håndværk. Kongesønnen Harald Kesja opførte Haraldsborg til forsvar af byen, men borgen blev ødelagt under borgerkrigen 1132‑34. I 1157 endte forsoningsfesten mellem de stridende kongsemner Svend Grathe, Knud Magnussen og Valdemar den Store med Blodgildet i Roskilde, hvor Knud blev dræbt, mens Valdemar undslap og endte som enekonge.
Omkring denne tid, ca. i 1150, blev Roskilde befæstet i form af en vold med træpalisade på toppen og grav, som omkransede et areal på ca. 73 ha.
Absalon var biskop af Roskilde i perioden 1158‑91. Kong Valdemar skænkede Absalon store godsbesiddelser med Havn, det senere København, som i 1186 blev videregivet til Roskilde Domkirke. Da de hærgende vendere var blevet nedkæmpet i 1168, blev Rügen i det nuværende Nordtyskland tillagt Roskilde Stift.
1200-tallet blev byens storhedstid. Med et anslået indbyggertal mellem 5.000 og 10.000 var Roskilde da en af Nordeuropas største byer. Byen fik en ny gotisk domkirke i tegl, de sidste sogne fik egen kirke, så der nu lå 14 sognekirker, og der oprettedes fem klostre. Hertil kom tre såkaldte milde stiftelser, tidens hospitaler.
I 1268 stadfæstede kong Erik Klipping Roskilde stadsret. Byens rådhus lå midt på Torvegaden (nuværende Algade). Bystyret bestod af borgmester og rådmænd udnævnt blandt købmændene. I 1350 tilfaldt København kongen, men biskop Peder Jensen Lodehat fik dog stadfæstet Roskildes gamle privilegier og ejerskabet til København af dronning Margrete 1. Ved hendes død i 1412 blev hun begravet i Sorø Klosterkirke, men i 1413 overført til Roskilde Domkirke. København gik dog tabt i 1416, men domkirken var nu kongelig begravelsesplads. Ved Reformationen i 1536 overtog kongen alt kirkens gods. Alene domkirken ejede 2.600 bøndergårde på Sjælland. De katolske kirker og klostre nedlagdes efterhånden, og med disse forsvandt byens væsentligste eksistensgrundlag.
Efter Reformationen flyttede bispen til København, og domkirken blev nu byens eneste sognekirke med kun tre præster. Kongen opretholdt domkapitlets 30 præbender (godsenheder) til aflønning af sine embedsmænd. Siden fulgte ulykker som pest i både 1592 og 1711 og brande i hhv. 1559, 1647, 1731 og 1735, hvor store dele af byen blev lagt i aske. Til erstatning byggedes langt ringere huse og gårde. Indbyggertallet faldt dramatisk; i 1787 lå det på 1.871. Skibsfarten led under de dårlige adgangsforhold til havnen. Derimod gav kilderne vandkraft til en begyndende industri i 1700-tallet: Maglekilde Papirmølle og et sukkerraffinaderi (Sukkerhuset) mv. Købmandshusene og handelen voksede langsomt fra omkring år 1800. Det Kongelige Palæ (i dag: Roskilde Palæ) husede 1835‑48 den sjællandske stænderforsamling. En teknisk skole åbnede i 1840 som en tegneskole for lærlinge. I 1830’erne blev byen opdaget af kendte kunstnere og blev et yndet feriemål, hvilket bidrog til en ny selvbevidsthed i Roskilde.
I 1845 lå Roskildes indbyggertal på 3.343, og roskildenserne levede endnu inden for den gamle byvold, da jernbanen København-Roskilde åbnede i 1847. I 1870’erne og 1880’erne blev havnen udvidet. Ved forlængelsen af jernbanen til Korsør i 1856 mærkedes for alvor konkurrencen fra København. Først fra 1870’erne etableredes flere større virksomheder i Roskilde, mange med tæt forbindelse til landbruget. Nye industrier og store offentlige institutioner sprængte de gamle grænser, samtidig med at befolkningstallet steg. I 1901 lå indbyggertallet på 8.368. Erhvervsopgørelsen fra samme år viste, at der var ansat 351 arbejdere i 15 industrielle virksomheder i byen. Størst var A/S De Danske Spritfabrikker med 27 ansatte. I 1895 åbnede Roskilde Andels Svineslagteri. Nogle håndværk forsvandt i slutningen af 1800-tallet, mens bygnings- og metalfag styrkedes. Samtidig blev handelslivet specialiseret, og der var 530 ansat ved handel, heraf 216 som selvstændige. De første villakvarterer udstykkedes på privat initiativ, men i 1907 begyndte kommunen selv at udstykke og byggemodne, hvorved nye villakvarterer opstod. Byen fik gasværk i 1863, vandværk i 1880 og elværk i 1906. Roskilde havde en borgerskole og en friskole for mindrebemidlede; disse omdannedes til kommuneskoler 1903‑04. Hertil kom nogle privatskoler og Roskilde Katedralskole. Byen fik handelsskole i 1869. Roskilde fik en katolsk menighed i 1901 med egen skole, sygehus og kirke. I 1909 oprettedes menighedssygehus. 1. Verdenskrig betød fremgang for fødevareindustri og -eksport, men en del virksomheder krakkede efter krigen.
I 1921 havde Roskilde 18.596 indbyggere. 1920’erne og 1930’erne var en økonomisk svær periode for Roskilde med lokale kriser. Hertil kom en forældet infrastruktur og mangel på jord til udstykninger. Kommunen købte derfor jord af Roskilde Kloster. I 1930’erne begyndte byen at modernisere infrastrukturen, fx etableredes et renseanlæg i 1937. Indbyggertallet var i 1950 vokset til 26.968, og nye ejendomsselskaber opførte karrébebyggelser til bl.a. arbejderbefolkningen. Roskilde Amts og Bys Sygehus’ nye fløj blev taget i brug i 1940. I 1942 indviedes en nordre og i 1953 en søndre omfartsvej. Byggeriet ændredes fra 50 % etageejendomme og 50 % parcelhuse i 1950 til 80 % etageejendomme i 1959, hvilket gav 2.900 nye lejligheder i årtiet. Antallet af virksomheder og hermed beskæftigede voksede, og denne tendens forstærkedes i 1960’erne. Byen fik sportsanlæg såsom Roskilde Ring og nyt bibliotek. I 1969 vedtoges en centerplan for at tilpasse den historiske by til den moderne udvikling.
Ved Kommunalreformen i 1970 nåede indbyggertallet op på 44.248. Roskilde var nu Sjællands største erhvervs- og uddannelsesby efter hovedstaden. Byen fortættedes, og når gamle erhvervsejendomme blev revet ned, byggedes boliger eller nye virksomheder. I 1972 indviedes RUC (nu Roskilde Universitet). Institutionsbyggeriet fortsatte, Himmelev Gymnasium åbnede i 1978, og to nye bycentre, Trekroner og Hyrdehøj, tog form. Gågaderne Algade og Skomagergade samt handelscenteret Ro’s Torv fra 2003 gav et rigt handelsliv. Bibliotek og museer udvidede, og nye museer såsom Museet for Samtidskunst åbnede. Roskilde Festival fra 1971 blev årets største event i byen. Efter at være faldet til 39.924 i 1990 var indbyggertallet igen steget og lå i 2006 på 45.807.