Но пришельцы недолго задержались на русской земле. Вскоре они начали отход в степи, еще раз опустошив на обратном пути Северо-Восточную Русь.
Героической страницей русской военной истории явилась оборона Козельска. Жители этого небольшого укрепленного городка «совет сотворили не сдаваться Батыю», плотно закрыли городские ворота и, по свидетельству летописца, «семь недель» отражали вражеские приступы. Героическая оборона Козельска произвела огромное впечатление на современников, о ней знали далеко на Востоке. Рашид ад-Дин упоминал об этих событиях: «Батый пришел к городу Козельску и, осаждая его два месяца, не мог овладеть им!» Монголо-татарам пришлось, как во время осады крупных городов, выставить против Козельска тяжелые камнеметные орудия и три дня обстреливать деревянные стены. Рухнули стены, но в проломах козельцы встретили татарских воинов с ножами в руках и отбили приступ. Ночью защитники Козельска сами предприняли вылазку и перебили множество воинов Батыя. Четыре тысячи татарских воинов нашли смерть под стенами Козельска, а «трех сыновей темников» (т. е. предводителей десятитысячных отрядов) после битвы «татары искали и не нашли во множестве трупов мертвых». «Злым городом» назвал Козельск разгневанный Батый.
После штурма Козельска полчища хана Батыя «уползли» в половецкие степи «зализывать раны» и готовиться к новым походам. Но завоеватели не нашли отдыха в половецких степях — народы Восточной Европы продолжали борьбу. Не покорились половцы, оттесненные прошлым летом за Дон. С юга на монгольские кочевья нападали аланы и черкесы, которые уходили в горные теснины, когда против них выступали большие монгольские силы. Восстали мордовские племена, и Батыю пришлось организовывать большую карательную экспедицию, чтобы покорить их. Во время этого похода завоеватели сожгли Муром и Гороховец на Нижней Оке. Но осталась непокоренной Южная Русь, и сильные крепости на краю Дикого поля (так называли на Руси половецкие степи) препятствовали дальнейшему нашествию на запад.
В марте 1239 г. монголо-татары подступили к Переяславлю-Южному, сильной крепости на рубежах Киевской земли. Неоднократно отбивал Переяславль-Южный набеги кочевников — печенегов и половцев, но против многочисленных осадных орудий монголо-татарского войска не смог устоять. Он был «взят копьем» (т. е. штурмом) и страшно разорен. Почти триста лет после этого разгрома Переяславль-Южный был «градом без людей», а древний каменный собор лежал в развалинах до середины XVII в. За осадой Переяславля-Южного последовала осада Чернигова, другого русского города, славного своими боевыми традициями: черниговцы неоднократно отбивали набеги степняков, и сам город считался «славным мужеством горожан» и «богатым воинами». Осенью 1239 г. Батый осадил Чернигов «в силе великой». Черниговцы вышли за городские степы, и «лютый был бой у Чернигова». Потом черниговцы отступили в город, и началась его осада. Защитники города обстреливали врага огромными камнями из метательных орудий. 18 октября после многократных штурмов Чернигов пал.
В начале 1240 г. завоеватели впервые подошли к Киеву. Монгольский военачальник Менгу-хан, остановившись против Киева на другой стороне Днепра, «удивился красоте его и величине его, прислал послов своих к горожанам, хотя их прельстить, но не послушали его». Менгу-хан не решился штурмовать многолюдный и хорошо укрепленный город и отошел. Только осенью полчища Батыя ворвались в пределы Южной Руси.
Оборону древней столицы возглавил «тысяцкий Дмитр», имя которого навеки вошло в летопись русской воинской славы. «Пришел Батый к Киеву в силе тяжкой, — рассказывал летописец о начале осады, — многим множеством силы своей и окружил город, и обступила его сила татарская, и был город в облежании великом. И был Батый у города, и отроки его обсели город, и ничего не было слышно от скрипения телег, рева множества верблюдов и ржания коней, и была переполнена Русская земля ратными. Поставил Батый пороки к городу, возле ворот Лядских. Пороки, непрерывно бьющие день и ночь, выбили стены, и взошли горожане на остаток стены, и тут копья ломались, и стрелы омрачили свет, и Дмитр тысяцкий был ранен». К вечеру татары захватили городские степы, но в глубину города прорваться не смогли. «Горожане же построили другой город около церкви Богородицы. Утром же пришли на них татары, и снова была брань между ними великая». Только после девятидневных непрерывных боев сопротивление защитников города было сломлено, Киев пал. Уцелевшие воины тысяцкого Дмитрия укрылись за каменными стенами Десятинной церкви. Из узких окон церкви на воинов Батыя полетели стрелы. Снова в дело вступили камнеметные орудия. Под их тяжкими ударами рухнули своды церкви, похоронив под обломками последних защитников древней столицы.