Основан на р. Кокшайка (ныне Малая Кокшага) в 1584 по указу царя Фёдора Иоанновича после присоединения марийских земель к Русскому государству как крепость Царёв город на Кокшайке, позже Царёвококшайск. Гидроним Кокшайка - устаревшая русская форма от древнего домарийского Кокшага неясного значения. Известны попытки осмысления названия из марийского кокша "лысый" или из кашкы "быстрый, стремительный" с последующей перестановкой шк в кш.
С 1708 в составе Казанской губернии, с 1781 уездный город Казанского наместничества Царёвококшайск.
В конце 19 в. в городе, по внешнему облику напоминашем село действовало 6 церквей, насчитывалось 186 деревянных и 8 каменных домов.
В 1919-27 гг. назывался Краснококшайск. В 1927 г. как центр Марийской автономной области получил название Йошкар-Ола - "красный город" (марийское йошкар "красный", ола "город"). В 1936-90 гг. столица Марийской АССР.
Архитектура, достопримечательности
Воскресенская церковь (1756), каменные и деревянные дома 19 в. с украшенными резьбой наличниками, карнизами, крыльцами и воротами.
На центральной площади построен университет (1936, арх. А.З. Гринберг), гостиница "Советская" (1960, арх. И.И. Виноградов). На центральном проспекте возведены административные здания.
По плану реконструкции города, разработанного в 1948, Йошкар-Ола застраивалась в основном пятиэтажными жилыми домами по типовым проектам, позже - девятиэтажными.