Het stadhuis (Raadhuisplein 36) is gebouwd ter plaatse van het laat-middeleeuwse huis van de familie Auckema, dat in 1618 werd gekocht door het stadsbestuur. Van dat huis resteert alleen de tweebeukige, deels met kruisribgewelven gedekte kelder.
In 1715 verrees naar ontwerp van stadstimmerman Claes Bockes Balck het huidige, blokvormige drielaags gebouw in strakke classicistische stijl met een zandstenen pronkrisaliet in Lodewijk XIV-vormen. Het bordes is gewijzigd in 1847.
De pronkrisaliet wordt geflankeerd door de figuren Vrede en Gerechtigheid van Gerbrandus van der Haven; een tekstcartouche herinnert aan de eerstesteenlegging door Willem Carel Hendrik Friso van Nassau-Dietz. Het middenrisaliet wordt afgesloten door een driehoekig fronton met een door Pieter Nauta gebeeldhouwd timpaan, voorstellende de stedenmaagd geflankeerd door putti met de attributen van Recht en Wijsheid.
Het dak wordt bekroond door een achtzijdige lantaarn met koepeldak. Hierin hangt een door Claude Fremy gegoten klokkenspel (1687), afkomstig uit de in 1884 afgebroken Nieuwetoren aan de Grote Hoogstraat.
In dit carillon zijn onder meer klokken opgenomen van Johan ter Steghe (1544), Hans Falck van Neurenberg (1644) en Petrus Overney (1689).Van het tussen 1715 en 1724 voltooide interieur zijn verschillende delen behouden gebleven, zoals in de vestibule een stucplafond met het stadswapen van Joseph Barberino en Gianbatista Albisetti, een pilasterpoortje met grisaille van Freerk Hayema en een balustertrap met snijwerk van Pieter Nauta en Benjamin Dijkstra. Op de verdieping bevinden zich onder meer wandtapijten met voorstellingen van vier van de vijf werelddelen door Alexander Baart en een door Freerk Hayema beschilderde zoldering (Burgemeesterskamer) en een zwartmarmeren schouw met allegorisch schilderstuk en een behangselschildering van Wouter Harmen Beekkerk (Vertrekkamer). De voorm. raadkamer op de verdieping is in 1845-'47 ontstaan en heeft een inrichting in neoclassicistische stijl naar plannen van stadsarchitect Th.A. Romein en met stucdecoraties van J.E. Martens.
Het raadhuis is in 1760 aan de achterzijde uitgebreid met een nieuwe raadzaal, in feite een bouwdeel met ingangspartij en hal op de begane grond en daarboven de vergaderzaal. Het door hofarchitect Pieter de Swart gemaakte algeheel ontwerp werd door Jan Nooteboom op onderdelen nader uitgewerkt. De iets van het Hofplein terugliggende pronkgevel is uitgevoerd in Lodewijk XV-vormen. Een tekstcartouche memoreert de eerstesteenlegging door stadhouder Willem V. Het hek aan de kleine plaats is vervaardigd door Jochem Lange. Het in 1766 gereed gekomen rococointerieur is gebaseerd op een ontwerp van hofarchitect Pieter de Swart.
De zaal bevat een eiken betimmering met snijwerk van Dirk Embderveld en Eilardus Swalue, een stucplafond van Jean Baptist Singer, een marmeren schouw van Hermannus Poggeman met een later portret van Maria Louise van Hessen Kassel (1836) en allegorische bovendeurschilderingen van Rienk Keyert (1763-'64) naar ontwerp van Rienk Jelgerhuis. Keyert maakte ook de grisailles boven de oorspronkelijk hier opgehangen reeks portretten van de Friese stadhouders, die men na hun verwijdering tijdens de Bataafse Revolutie heeft vervangen door een reeks portretten van Oranjevorsten vanaf koning Willem I (1832). De begane grond van dit bouwdeel is rond 1930 ingrijpend verbouwd.
Achter de raadzaal bevindt zich de zogeheten Hoofdwacht (Hofplein 38). De oorspronkelijke hoofdwacht voor de stadhouderlijke garde (tot 1747) en het stedelijk garnizoen werd in 1688 gebouwd. De naam is overgegaan op de in 1844-'45 tot stand gekomen nieuwbouw voor het politiebureau (tot 1935) annex kantongerecht (tot 1879). Het door Th.A. Romein ontworpen neoclassicistische gebouw is sinds 1988 okergeel geschilderd. De indeling van het pand is rond 1930 ingrijpend gewijzigd.
Tevens is toen een uitbreiding op het achterterrein tot stand gekomen en heeft men een achter de Hoofdwacht gelegen huis bij het complex getrokken. Dit in de kern 17de-eeuwse huis heeft een voorgevel uit de eerste helft van de 19de eeuw.
Voor het stadhuis staat een Wilhelminaboom (1898) met rondom een sierhek, voorzien van rijkssymbolen en oranjetwijgen, naar ontwerp van H.H. Kramer en uitgevoerd door smederij Kroes.