Причиной этого конфликта стало желание Москвы вернуть утерянные в годы Ливонской войны крепость Нарва (Ругодив), Ивангород, Ям, Копорье и окружающие их территории. Первоначально русское правительство пыталось решить дело дипломатическим путем. Но шведский король Юхан III (годы правления 1568–1592) не собирался уступать захваченные территории, угрожая Москве возобновлением военных действий.
Шведский монарх рассчитывал на поддержку своего старшего сына Сигизмунда III, который с конца 1587 года занимал престол Речи Посполитой, хотя между Россией и Польшей в августе 1587 года было заключено 15-летнее Варшавское перемирие.
Желая напугать Москву военной силой, шведы организовали ряд нападений на пограничные русские территории. В июле 1589 года шведский отряд разорил Кандалакшскую волость, было сожжено несколько поселений, убито 450 человек. Осенью шведы опустошили Керетьскую и Кемскую волости.
11 января 1590 года к Ям-городу были направлены конные сотни для разорения вражеской территории.
18 января в поход выступили основные силы. Отдельный отряд направили для осады Копорья.
26 января русская армия прибыла к Яму (Ямбургу). Шведский гарнизон в 500 человек на следующий день капитулировал на условиях свободного прохода. Часть немцев-наемников перешла на русскую службу.
30 января передовой русский отряд вышел к Ивангороду и был атакован прикрывавшим границу четырехтысячным шведским отрядом. В тяжелом сражении шведы были разбиты и отступили.
2 февраля к Ивангороду и Нарве подошли основные силы русской армии. Были начаты осадные работы.
В ночь на 5 февраля русские батареи начали бомбардировку крепостей. Отряды русской конницы были направлены для разорения округи у Раковора.
19 февраля предпринят штурм Нарвы и Ивангорода, но шведы его отбили.
Русские возобновили бомбардировку крепостей. Уже на следующий день 20 февраля шведы попросили перемирия. Были начаты переговоры. Когда они заходили в тупик, русская артиллерия возобновляла обстрел.
25 февраля в русском лагере близ Нарвы было подписано предварительное перемирие сроком на один год. Шведская сторона передавала России Ям, Ивангород и Копорье.
Но шведский король отказался заключать мир на русских условиях. В начале октября прошел очередной раунд переговоров, безрезультатно.
В ноябре шведы нарушили перемирие с Россией и попытались внезапной атакой захватить Ивангород. Их нападение было отбито.
В декабре шведские войска совершили ряд рейдов на порубежье Пскова и разорили окрестности Яма и Копорья.
10 января 1591 года перебежчик сообщил русским воеводам о наступлении 14-тысячного корпуса на Копорье. Навстречу из Тесово вышли три полка и отряд из Орешка. Сражения в Копорском уезде шли три недели. В результате шведы отступили.
Летом шведы совершили новое нападение. Оно было согласовано с крымскими татарами: Орда совершила поход на Москву. В результате основные русские силы были отвлечены на юг. Шведы напали на новгородские и гдовские земли.
Русское командование смогло усилить оборону северных рубежей после того, как отбило нападение огромной орды Газы Герая.
Шведы активизировали свои усилия на Русском Севере, дошли до Белого моря, захватили Печенгский монастырь, убив 116 монахов и мирян. Затем шведы осадили Кольский острог и разорили его окрестности, но взять не смогли.
В августе шведы опустошили Кемскую волость, подошли к Сумскому острогу, осаждали Колу. После ряда ожесточенных схваток шведы были вынуждены отступить.
В сентябре новый шведский отряд перешел границу и разорил принадлежащую Соловецкому монастырю Сумскую волость. Шведы осадили Сумский острог, сожгли его посад, но взять снова не смогли. Зато разорили окрестности Пскова.
Москва, встревоженная возросшей активностью врага, выслала к Соловецкому монастырю войска под командованием братьев Андрея и Григория Волконских. Прибытие подкреплений позволило вытеснить шведские войска из земель русского Севера и перейти к рейдам на территории противника.
6 января 1592 года русское войско вышло из Новгорода, а 30-го было у Выборга. Передовые русские части были атакованы вышедшими из крепости шведскими войсками. После ожесточенного боя шведы, понеся значительные потери, отступили.
Русское войско не стало тратить время на осаду мощной крепости и через день двинулось дальше, разорив округу Выборга, а затем Кексгольма. 14 февраля русское войско вернулось в свои земли, захватив значительный полон и добычу.
20 января 1593 года Швеция и русское царство заключили перемирие на два года. Но шведы нарушали его, продолжая нападения на приграничные русские земли. Так, в марте 1594 года шведский отряд вторгся в новгородские земли, а в апреле – в лопские волости. Москва в это время стремилась к миру (возникла угроза вступления в войну Речи Посполитой, король Юхан умер, а шведский престол занял король польский и великий князь литовский Сигизмунд III), поэтому не стала организовывать ответных действий.
В деревне Тявзино около Нарвы в ноябре 1594 года начались переговоры о заключении мирного договора. Переговоры шли медленно. Только 18 (28) мая 1595 года был подписан Тявзинский мирный договор, «вечный мир» между Россией и Швецией.
Русское государство признало право Швеции на Эстляндское княжество вместе с рядом крепостей: Ревелем, Нарвой, Везенбергом, Нейшлотом и другими. Швеции была уступлена часть Карелии – земли до Топ-озера и Выг-озера. Шведские послы согласились передать России крепость Корелу (Кексгольм) с прилегающей территорией. Шведы также уступали города, взятые русскими войсками во время похода 1590 года: Ям, Копорье, Ивангород. Шведская сторона признала за Россией города Орешек и Ладога. Шведы обязывались не нападать на приграничные русские земли. В свою очередь, Москва обязалась не начинать войну против шведских владений. Стороны обязались безвозмездно выдать друг другу людей, попавших в плен в предыдущие годы ведения боевых действий.
Купцам из других стран разрешалось вести торговлю с русскими только через шведские города Выборг и Ревель, Россия не могла основывать морские гавани, вести торговлю через Ивангород – торговлю можно было вести только с нарвской стороны, но не с ивангородской. Это нарушало экономические и стратегические интересы России. Швеция на долгие годы стала лидером северо-западного региона, а Балтийское море превратилось во «внутреннее озеро» шведов.
Несмотря на то, что России удалось добиться возвращения ряда утраченных земель, условия Тявзинского мира не казались правительству Бориса Годунова достаточно справедливыми. С этим связано затягивание ратификации договора, то есть придания ему юридической силы. Только в 1609-м, уже в годы правления Василия Шуйского, между Россией и Швецией был заключен Выборгский договор, одним из пунктов которого было признание Тявзинского мира.