Происхождение названия Загреб до сих пор остается неизвестным. Впервые название было зафиксировано в хартии архиепископа Эстергома Фелициана, датированной 1134 годом, упомянутой как Загребская епархия в связи с основанием поселения в Каптоле в 1094 году. Хорватская народная этимология дает свое разъяснение названия города, считается, что оно произошло от глагола za-grab, что означает «зачерпывать» или «копать». По преданию, в начале XIV века, во время сильной засухи епископ Августин Кажотич (ок. 1260–1323) попросил выкопать колодец, в котором чудотворно появилась вода и стала спасением. По другой легенде, уставший и желающий утолить жажду хорватский князь попросил девушку по имени Манда принести ему холодной водицы из родника: «Манда, душенька, загреби водички…». С тех давних пор город стали называть Загреб. Во времена Австро-Венгерской империи в немецкоязычной документации город носил название Аграм (от am-graben – «возле рва»).
В Средневековье на месте современного Загреба существовали два города на соседних холмах: Градец (Gradec) и Каптол (Kaptol). Каптол с 1094 года был центром религиозной жизни, а Градец – городом ремесленников. Название Каптол происходит от латинского слова capitulum, обозначающего группу регулярных каноников, которые управляют поселением. Каптола представлял собой асимметричный прямоугольник, и улица Каптол проходила с севера на юг через террасу, вдоль которой рядами располагались резиденции каноников. В 1217 году там состоялось освящение собора. Вокруг Каптола с момента его образования не было построено крупных укреплений. Только частокол имел защитную функцию, он постоянно разрушался и перестраивался. Надежные оборонительные стены и башни были сооружены между 1469 и 1473 годами. Лучше всех укреплений той эпохи сохранилась башня Прислина. Между 1512 и 1520 годами, ожидая турецкое вторжение, епископ Загреба построил укрепления вокруг собора и своей резиденции. Часть из них сохранилась до наших дней.
Градец – другая часть Старого Загреба – находится на холме Горни Град. Он стал свободным королевским городом в 1242 году, когда получил королевскую грамоту от Белы IV Венгерского. Золотая булла 1242 года сделала Градец феодальным владением, подотчетным непосредственно королю. Его жители получили право на самоуправление и избрание своего городского судьи. Они построили оборонительные стены и башни вокруг своего поселения в ожидании нового татарского нашествия между 1242 и 1261 годами. Поселение было окружено оборонительными стенами в форме треугольника, которые укрепляли прямоугольные и полукруглые башни. В город вели четверо главных ворот: ворота Месничка на западе, ворота Опатичка на севере, Дверь на юге и Каменные ворота на востоке. К воротам имелись ключи, которые вручались мэру и городскому судье при вступлении их в должность.
В истории города Загреба между Градецом и Каптолом были зафиксированы многочисленные конфликты. Взимание арендной платы и спорная собственность – основные причины разногласий. Историки отмечают, что первые известные споры вспыхнули в середине XIII века и продолжились в 1375 году. Дело дошло до того, что в 1391 году епископ Иван даже отлучил от церкви жителей Градеца за неуплату епископского жалованья. Однако в 1392 году был заключен Градецкий и Каптольский мир, который уже в 1396 году нарушили. Очередной прецедент произошел в канун Нового года, когда жителями Каптола были раскопаны могилы граждан Градеца, которых похоронили после отлучения от церкви. Но это было еще не самым страшным, далее в ходе столкновений между селениями произошло несколько случаев массовых убийств, разрушение домов и мародерство горожан.
Чтобы предотвратить дальнейшие конфликты, король Сигизмунд приказал епископу больше не подавать иски в суд на граждан, вернуть их недвижимость и снять отлучение от церкви. Но эти меры не улучшили положение дел. В 1421 году из-за пограничной линии на Медвешчаке возник спор. Он утих только в 1469 году. Далее сильный конфликт между Каптолом и Градецом упоминается в 1667 году из-за строительства моста через ручей Медвешчак.
В начале XVII века города фактически слились в одну конурбацию – городской округ полицентрического типа, который имеет в качестве ядра два более или менее одинаковых по размеру и значимости города при отсутствии явно доминирующего центра. Епископство Каптола переименовали в архиепископство Загреба.
Историки отмечают, что они не были известны как единый город, имея между собой экономические и политические многочисленные связи, даже когда Загреб стал политическим центром, а региональный сабор, представляющий Хорватию, Славонию и Далмацию, впервые созвали в Градеце. Каптол и Градец продолжали оставаться конкурирующими образованиями до XIX века.
Загреб стал столицей Хорватии в 1557 году. В XIV–XV веках город развивался вокруг двух главных районов – Горного и Капитула. Капитул был местом пребывания банов и служил барьером между цивилизованной частью города и другими окружающими районами.