Тем временем Баторий начал приступ крепости. Осажденные в ней московские войска отвечали смелыми вылазками, во время одной из которых захватили королевское знамя. Наконец, королевским войскам удалось зажечь крепость калеными ядрами. Но и в этих условиях ее защитники продолжали доблестно сражаться, оборачиваясь мокрыми кожами. 5 сентября пожар достиг крепостного арсенала, где находились пороховые запасы. Их взрыв разрушил часть стен и дал возможность воинам Батория ворваться в крепость. Ожесточенный бой продолжился внутри ее. В безжалостной сече пали практически все защитники Великих Лук, в том числе и воевода Воейков.
Овладев Великими Луками, король послал отряд князя Збаражского против воеводы Хилкова, стоявшего в бездействии у Торопца. 1 октября 1580 года польско-литовские части атаковали московские полки и одержали победу. Поражение Хилкова лишило защиты южные районы новгородских земель и позволило противнику продолжить зимой военные действия в этом районе. В феврале 1581 года польско-литовские отряды совершили рейд к озеру Ильмень. Во время него был захвачен город Холм и сожжена Старая Русса. Кроме того, были взяты крепости Невель, Озерище и Заволочье. Тем самым московские войска были не только полностью вытеснены из владений Речи Постолитой, но и потеряли значительные территории на своих западных рубежах.
Когда Баторий взял Великие Луки, из Орши к Смоленску выступил 9-тысячный польско-литовский отряд местного военачальника Филона, который уже объявил себя воеводой смоленским. Пройдя по смоленским областям, он планировал соединиться у Великих Лук с Баторием. Но в октябре 1580 года отряд Филона был встречен и атакован у деревни Настасьино, что в 7 км от Смоленска, полками московского воеводы Бутурлина. Под их натиском противник отступил к обозу, а ночью Филон покинул свои укрепления и начал отход. Действуя энергично и настойчиво, Бутурлин организовал преследование. Настигнув подразделения Филона в 40 верстах от Смоленска, на Спасских Лугах, московские полки вновь решительно атаковали польско-литовское войско и нанесли ему полное поражение. Было захвачено 10 пушек и 370 пленных. По словам летописи, сам Филон «еле пеш в лес утек». Эта была единственная сравнительно крупная победа царских войск в кампании 1580 года, но она защитила Смоленск от польско-литовского нападения.
Тем временем шведы возобновили натиск в Эстонии. В октябре — декабре 1580 года шведская армия осадила Падис (ныне эстонский город Палдиски). Крепость защищал небольшой гарнизон во главе с воеводой Данилой Чихаревым. Решив защищаться до последней крайности, Чихарев велел убить шведского парламентера, пришедшего с предложением о сдаче. Не имея продовольственных запасов, защитники Падиса терпели страшный голод. Они переели всех собак и кошек, а в конце осады питались лишь соломой и кожами. Тем не менее гарнизон Падиса 13 недель стойко сдерживал натиск шведского войска. Только спустя три месяца осады шведам удалось взять крепость приступом, которую к тому времени обороняли уже полуживые призраки. После падения Падиса его защитники были истреблены, а взятие шведами этой крепости положило конец московскому присутствию в западной части Эстонии.
В то же время Стефан Баторий с трудом добился согласия сейма на продолжение войны и организацию нового похода, поэтому начал его лишь в середине 1581 года, двинув свои войска на Псков. Через этот крупнейший город шла основная связь Москвы с ливонскими землями. Взяв Псков, король планировал окончательно отрезать Московское царство от Ливонии и победоносно закончить войну. Псков был очень сильно укреплен. Он стоял на высоком правом берегу реки Великая при впадении в нее реки Пскова и был обнесен 10-километровой каменной стеной, имевшей 37 башен и 48 ворот. Правда, со стороны реки Великая, откуда трудно было ждать нападения неприятеля, стена была деревянная. Под башнями имелись подземные ходы, обеспечивавшие скрытную связь между различными участками обороны. Верхние ярусы башен также были соединены переходами. Высота стен составляла 6,5 м, а толщина — от 4 до 6 м, что делало их неуязвимыми для тогдашней артиллерии. Внутри Больших стен имелся Средний город, также окруженный стенами, в Среднем городе — укрепленный Довмонтов город, а в Довмонтовом городе — каменный Кремль. Над уровнем реки Великая стены Довмонтова города возвышались на 10 м, а Кремль — на 17 м, что делало эти укрепления практически неприступными. В городе имелись значительные запасы продовольствия, оружия и боеприпасов.
Стефан Баторий в лагере под Псковом.
Московское войско было рассредоточено по многим пунктам, откуда ожидалось вторжение неприятеля. Сам царь со значительным по численности отрядом остановился в Старице, не рискнув идти навстречу шедшей к Пскову армии Стефана Батория. Но к Пскову был направлен отряд князя Ивана Шуйского, назначенного «большим воеводой». Ему подчинялись семь других воевод. Все жители Пскова и гарнизон были приведены к присяге, что не сдадут город. Общая численность русских войск, оборонявших Псков, достигала 25–30 тысяч человек. По приказу Шуйского окрестности Пскова были опустошены, чтобы неприятель не мог найти там фураж и продовольствие.
18 августа 1581 года армия Стефана Батория (около 50 тыс. чел.) подошла к Пскову на расстояние 2–3 пушечных выстрелов. В течение недели Баторий вел разведку городских укреплений и только 26 августа приказал своей армии подступить к городу. Но солдаты попали под огонь гарнизонных пушек и отступили к реке Череха. Здесь Баторий устроил укрепленный лагерь. Осаждающие стали рыть траншеи и ставить туры, чтобы приблизиться к стенам крепости. В ночь с 4 на 5 сентября они подкатили туры к Покровской и Свиной башням на южном фасе стен и, поставив 20 орудий, с утра 6 сентября начали обстреливать обе башни и 150 метров стены между ними. К вечеру 7 сентября башни были сильно повреждены, а в стене образовался пролом шириной 50 м. Но осажденные успели соорудить против пролома новую деревянную стену.