Подойдя около 19.30 18 сентября к Вильно, 8-й и 7-й танковые полки 3-го кавкорпуса завязали бой за южную часть города. 8-й танковый полк в 20.30 ворвался в южную часть города. 7-й танковый полк, натолкнувшийся на упорную оборону, только с рассветом смог войти в юго-западную часть города. Тем временем 6-я танковая бригада, форсировав р. Березина, прошла Гольшаны и в 20 часов 18 сентября достигла южной окраины Вильно, установив связь с подразделениями 8-го танкового полка. Используя орудия, расположенные на горе Трех Крестов, польская молодежь артиллерийским огнем обстреляла наступающие танки. Для поражения танков в городе широко использовались бутылки со смесью бензина и нефти. Один советский танк был сожжен на Завальней улице. В танке погибли механик-водитель Шенкунос и башенный стрелок Кульков, а командир эскадрона старший лейтенант Бодыль был ранен, но сумел отползти от танка и, сняв фуражку, с наганом в руке стал пробираться к своим. Позднее его, потерявшего сознание, случайно подобрали танкисты экипажа младшего командира Куликова. Выяснив, что значительная часть регулярных войск и штабов уже покинула город, подполковник Т. Подвысоцкий был вынужден около 22.30 принять решения об оставлении Вильно и отходе к литовской границе. Ночью польские войска стали отходить за р. Вилия.
В 5 часов передовой отряд группы полковника К.И. Ломако достиг Зеленого моста, где завязалась перестрелка. В 5.45 туда же подошли танки 8-го танкового полка. В течение двух часов возле Зеленого моста шел бой, завершившийся его захватом в 8.50. В ходе боя было уничтожено 3 противотанковых орудия и 5 станковых пулеметов. Стремясь сжечь Зеленый мост, поляки поставили на нем и подожгли машину с бочкой бензина, но танк под командованием Дьячека сбил машину с моста, пожар был потушен, и войска переправились в северную часть города. Тем временем полковник Ломако решил основными силами 10-го танкового полка обойти город с севера и отрезать его от литовской границы. К 8 часам 19 сентября подошли части 3-го кавкорпуса. 102-й кавполк повел наступление на юго-восточную окраину, а 42-й кавполк двинулся в обход города с востока и сосредоточился на северо-восточной окраине. Тем временем 7-я кавдивизия обходила город с запада. В 10 часов была захвачена товарная станция, где находилось 3 эшелона с боеприпасами и военным снаряжением. В 11.30 в город вступила мотогруппа 3-й армии, сформированная из частей 24-й кавдивизии, и полковник Ломако был назначен комендантом города. В 12.45 было захвачено жандармское управление, к которому подъехал танк под командованием Щечка. Направив пушку и пулемет в окно, командир танка вместе с рабочими направился в здание. Часть полицейских, увидев танк, разбежалась, а остальные сдались и даже помогали выносить из здания оружие.
В 13 часов был занят вокзал. В 16 часов вновь возникла перестрелка у Зеленого моста, в ходе которой были подбиты одна бронемашина и танк. К 18 часам сопротивление противника было сломлено и к вечеру 19 сентября обстановка в городе нормализовалась, но отдельные перестрелки возникали вплоть до 2 часов ночи 20 сентября. В боях за Вильно части 11-й армии потеряли 13 человек убитыми и 24 человека ранеными, было подбито 5 танков и 4 бронемашины. 20–23 сентября советские войска подтягивались к Вильно, занимаясь очисткой города и прилегающих районов от польских частей. Стоит отметить, что около 100 солдат польской армии с оружием примкнули к передовому отряду 24-й кавдивизии РККА и помогали разыскивать скрывшихся офицеров и разоружать еще не сдавшиеся польские части. Всего было взято в плен около 10 тыс. человек, трофеями советских войск стали 97 паровозов, 473 пассажирских и 960 товарных вагонов (из них 83 с продовольствием, 172 с овсом, 6 с боеприпасами, 9 цистерн с бензином и 2 со спиртом). В 15.40 19 сентября 20 самолетов 43-го легкобомбардировочного полка ВВС 3-й армии совершили налет на железнодорожный перегон Игналино – Дукшты, где воздушная разведка обнаружила эшелон. Имея задачу воспрепятствовать подвозу войск в Вильно и к Литве, самолеты сбросили 160 бомб, которые разрушили в 6 местах перегон и повредили железнодорожное полотно на станциях Рымшаны и Дукшты[108].
Тем временем в 3.10 19 сентября начальник Генштаба РККА своим распоряжением № 03 передал командующему Белорусского фронта приказ наркома обороны о развертывании войск на бывшей польско-латвийской границе. «Задачей этим войскам ставятся обеспечение правого фланга группы т. Кузнецова и прикрытие со стороны Латвийской границы. Для чего вдоль границы с Латвией должны быть выставлены заставы, имея главные силы стрелковых полков в резерве сзади. Если от 5 сд был выделен полк к Латвийской границе, то он до смены остается на Латвийской границе, а затем переходит на Литовскую границу», причем «ни Латвийская, ни Литовская границы отнюдь не должны быть нарушены. Поэтому взять с этими частями несколько пограничников для инструктажа поведения на границе»[109]. Соответственно, в 3.40 штаб Белорусского фронта направил в штаб 3-й армии приказ, требовавший организовать охрану латвийской и литовской границ. Со своей стороны командующий 3-й армией своим распоряжением № 0210 приказал 10-й стрелковой дивизии к 24.00 20 сентября выдвинуться на польско-латвийскую границу и уничтожить польские пограничные посты, но границу не нарушать[110]. 19 сентября советскому военному атташе в Литве было сообщено, что литовские войска получили приказ «встречать части Красной Армии в дружественном духе и помогать им в установлении литовской границы»[111]. В 20.15 20 сентября советский военный атташе в Литве доложил в Москву, что командующий литовской армией просил сообщить командованию Красной армии, «чтобы, в случае отступления поляков из-под Гродно на литовскую территорию, наши части не преследовали их. Командующий обещал разоружить их своими силами, даже если бы поляки вошли в Литву с боем»[112]. В тот же день командующий 3-й армии приказал командиру 4-го стрелкового корпуса не позднее 12.00 21 сентября выставить сторожевые заставы на литовской границе от оз. Дрисвяты до Новых Трок, а главные силы корпуса иметь в районе Свенцяны, Повевиорка, Лынтупы[113].
В 23.50 20 сентября начальник Генштаба РККА направил командующему войсками Белорусского фронта директиву № 16695, в которой указывалось, что «народный комиссар приказал занять передовыми частями 21.9 район Августов, Сувалки, Сейны, не нарушая литовской и германской границ»[114]. В 9 часов утра 21 сентября командующий 3-й армией издал боевой приказ № 6/оп:
«1. На основании приказа Военсовета Белфронта от 20.9.39 г. за № 04 3[-й] армия в составе 10, 5, 126 сд, упр[авления] 4 ск, 24 кд, 25 тбр и 108 гап РГК имеет задачей обеспечить правый фланг войск Белорусского фронта по границам с Литвой и Латвией, не нарушая границ этих государств.
ПРИКАЗЫВАЮ:
2. 4 ск в составе 5, 10, 126 сд выставить сторожевые заставы по Латвийской и Литовской границе на участке Придруйск, Олькеники (40 км ю[го]-зап[аднее] Вильно), обеспечив их поддержку из глубины надлежащей расстановкой ударных групп полков и дивизий.
а) 10 сд на участке Придруйск – Дукшты.
б) 126 сд на участке (иск.) Дукшты – Жиндулы.
в) 5 сд на участке (иск.) Жиндулы – Олькеники.
Главные силы 5 сд не менее двух полков сосредоточить в Вильно.
Граница с соседней слева 11[-й] армией прежняя и далее по Литовской границе до Сейны.
Охрану границы на участке Жиндулы, Олькеники до прибытия частей 5 сд возлагаю на командира 24 кд.
Командиру 5 сд выставленные сторожевые заставы на участке западнее и северо-западнее Свенцяны снять только по смене их частями 126 сд». Управление 3-го стрелкового корпуса, 27-я, 50-я, 115-я стрелковые дивизии и 22-я танковая бригада передавались в состав 11-й армии[115], войска которой продолжали продвигаться вдоль литовской границы в сторону Гродно. В ходе этих маршей соединения 16-го стрелкового корпуса 21 сентября заняли Эйшишки, а к 24 сентября развернулись на литовской и германской границах севернее и северо-западнее Гродно. Тем временем войска 3-й армии стали выдвигаться к границе с Литвой. Однако до подхода стрелковых частей для охраны границ пришлось использовать разъезды и моторизованные группы из состава 36-й и 24-й кавдивизий, 6-й, 22-й и 25-й танковых бригад. В 22.30 21 сентября 144-й кавполк 36-й кавдивизии, вышедший в районе Мейшагола к литовской границе, рассеял мелкие группки поляков. При приближении разъездов кавдивизии к границе литовские пограничники выбросили белый флаг и заявили: «Мы с вами воевать не хотим, мы держим нейтралитет». 21 сентября литовская сторона уведомила советского поверенного в делах в Литве о том, что «части Красной Армии уже вступили в соприкосновение с охраняющей границу литовской армией и что соприкосновения эти проходят в весьма дружественном духе». Хотя были случаи, «когда в отдельных местах части Красной Армии задевали литовскую границу, но достаточно было указать на это, как командиры Красной Армии, попросив указать линию границы, извиняясь, немедленно отходили». По мнению литовской стороны, советские «части ведут себя исключительно корректно и дружелюбно»[116].