Комендантом гарнизона был назначен командир 281-й охранной дивизии генерал-майор Шерер. Подразделения его дивизии были разбросаны по всей ширине фронта. Оборонять Холм предстояло силами местного гарнизона и разрозненных воинских групп, входивших в состав различных немецких дивизий. Все они должны были постепенно подтянуться к городу. Подразделения 280-го пехотного батальона, например, были переброшены на Восточный фронт из Дании. Были там и горные стрелки, и полицейские батальоны, и даже моряки. Плюс ко всему 8 латышских и 7 немецких батарей. Всего в гарнизоне было около 5000 человек. Этой «боевой группе Шерера» предстояло с конца января 1942 г. удерживать небольшой участок фронта на берегу Ловати. Занимаемая противником площадь составляла всего около двух с половиной квадратных километров, а порою гораздо меньше, удерживая тем самым автодорожный узел посреди огромного заболоченного района, опорный пункт и переправу через верховья Ловати.
Командир 33-й стрелковой дивизии полковник А.К. Макарьев 18 января в 15 часов получил боевое распоряжение о наступлении на Холм. Вечером того же дня в 23.30 был отдан приказ о выдвижении дивизии в район города Холм с последующим переходом в наступление и овладение городом. По этому приказу части дивизии в течение 19.01.42 г. выходили в район Холма, окружали его и, нанося удар с северо-запада и запада, в ночь на 20.01.42 г. овладевали городом, уничтожая в нем остатки отошедшего противника.
82-й стрелковый полк занял исходные положения для наступления к исходу 19 января. Остальные полки вышли только через сутки – 16-й стрелковый полк по причине отсутствия дорог, а 73-й стрелковый полк из-за того, что 19 и 20.01.42 г. он продвигался с боем. 19.01.42 г. первый раз за весь период наступления немецкая авиация группами в 15–20 самолетов бомбила наступающие части.
Дивизия при подходе к Холму имела 9924 человека, 374 автомата, 126 ручных и 18 станковых пулеметов, 50-мм минометов – 31, 82-мм минометов – 12, 76-мм орудий – 12, 122-мм орудий – 6. Вечером 20.01.42 г. началась борьба за Холм, а к утру следующего дня он был окружен. С 20.01.42 г. дивизия вела напряженные бои на подступах и непосредственно в Холме, одновременно отражая яростные атаки вновь подходящих частей 218-й пехотной дивизии в районе Куземкино. К исходу 23 января была очищена от противника вся западная часть города. Восточная часть Холма прочно удерживалась немцами.
Уже 22 января обозначилось выдвижение крупных сил противника по дороге Локня – Холм и ряд настойчивых его атак в районе Куземкино с задачей соединиться с Холмским гарнизоном. 23 января части 33-й стрелковой дивизии при поддержке 146-го танкового батальона (13 танков) вновь предприняли штурм города. Лишенные достаточной пехотной поддержки, танки, рискуя быть сожженными на узких улочках города, вынуждены были отойти.
27 января свыше батальона пехоты противника обходом с северо-запада ворвались в город. 164-й стрелковый полк вынужден был оставить западную часть Холма и отойти в Ореховно. В результате противник смог соединиться с частями немецкого гарнизона, находившимися на восточном берегу Ловати.
Немцы, прорвавшись в Холм, продолжали атаку против Куземкино с целью расчистить себе путь в город. Напор врага ослабел только 31 января, когда на дорогу Холм – Локня возле деревни Сопки в десяти километрах от Холма вышла 45-я стрелковая бригада. Предыдущими боями она была обескровлена. На 13 января в ее 73-м стрелковом полку насчитывалось 218 человек, в 164-м – 312 человек. До 12 февраля атаки на Холм не предпринимались. Наши части приводили себя в порядок, пополняли стрелковые батальоны за счет тыловых и спецподразделений, доведя состав каждого из трех батальонов полков до 500–550 человек.