В ожидании ответного нападения казанских отрядов Иван III приказал готовить к обороне пограничные города Нижний Новгород, Муром, Галич и Кострому, разослав туда свои заставы. Действительно зимой 1467/68 г. татары напали на хорошо укрепленный еще в годы противоборства Василия II с Юрием Звенигородским и его детьми Галич. Однако большая часть своевременно извещенного местного населения, привычного к нападениям врагов, успела укрыться в городе. Галичане, с помощью подоспевшей им на помощь лучшей частью московского войска — «двором великого князя» под командованием князя Семена Романовича Ярославского не только отбили нападение, но в декабре 1467 — январе 1468 г. совершили ответный лыжный поход на черемисов (марийцев), территория которых входила тогда в состав Казанского ханства. Русские полки в конце похода находились всего в дне пути от татарской столицы, «повоеваша всю ту землю». Из похода войско Семена Романовича вернулось к празднику Крещения Господня — 6 января 1468 г.
Боевые действия шли и на других участках русско-казанской границы. Муромцы и нижегородцы опустошали татарские порубежные селения на Волге, «а с Вологды ходиша тако ж, и устюжане и кичмежане и воеваша по камен по Вятке и много избиша и плениша». В отместку за этот поход татарское войско в конце зимы 1467/68 г. дошли до верховьев реки Юга, сожгли городок Кичменгу, перебив его защитников и захватив в плен укрывавшихся за его стенами жителей окрестных селений. На Вербной неделе (4–10 апреля 1468 г.) казанцы и черемисы разграбили две костромские волости, в мае выжгли окрестности Мурома, однако в последнем случае совершивший нападение татарский отряд был настигнут и уничтожен ратью князя Д. Д. Холмского.
В начале лета 1468 г. выступившая из Нижнего Новгорода «застава» князя Федора Семеновича Ряполовского у Звеничева Бора в 40 верстах от Казани вступила в сражение с большим татарским войском, в которое входила отборная ханская гвардия («двор царев, много добрых»). Московская «застава», не уступавшая казанцам в численности, уничтожила почти все войско противника. В сражении погиб «богатырь и лиходей» Колупай, в плен попал князь Ходжум-Берде (в летописях «Хозум-Бердей»). В это же время небольшой отряд воеводы Ивана Дмитриевича Руно (около 300 воинов) через Вятскую землю совершил успешный рейд в глубь Казанского ханства.
Активность московских войск стала неприятным сюрпризом для казанцев, и татары решили завоевать Вятский край, обезопасив свои северные границы. На первых порах их войскам сопутствовал успех. Оккупировав земли вятчан, они перерезали пути доставки в край продовольствия (по русским летописным записям отняли у них «гобино»), в самом крупном городе края Хлынове была поставлена татарская администрация. Показательно, что заключенный между победителями и местной знатью договор носил довольно мягкий характер. Самым тяжелым условием (и неприемлемым для Москвы) вятской капитуляции было соблюдение нейтралитета в русско-казанской войне, принимавшей все более ожесточенный характер. Однако после победы «заставы» у Звеничева Бора, в ходе боевых действий наступила недолгая пауза.
Завершилась она весной 1469 г. Русским командованием был разработан и принят к исполнению новый план предстоящей кампании, который предусматривал согласованные действия двух московских армий на сходящихся направлениях. На главном — нижегородском вниз по Волге до Казани должна была наступать рать воеводы Константина Александровича Беззубцева. Подготовка этого похода не скрывалась, и носила демонстративный, отвлекающий характер. В составе великокняжеской рати на Казань были посланы даже московские купцы и посадские люди, которым выступить в поход было «пригоже по их силе».
Другое войско формировалось в Великом Устюге под стягом князя Даниила Васильевича Ярославского и включало в себя устюжские и вологодские отряды. В качестве младших воевод в Устюг были отправлены 9 детей боярских из «двора» великого князя[2]. Выступив в поход, эта рать, насчитывающая около 1000 воинов, должна была пройти по северным рекам почти 2 тысячи километров и выйти в верховья Камы. Затем уже Устюжскому войску надлежало спуститься по ее течению до устья, и, будучи в глубоком тылу у татар, подняться на веслах вверх по Волге до Казани с юга как раз к тому дню, когда туда должна была прибыть рать Беззубцева. Возлагаемые на этот рейд надежды оказались невыполнимыми из-за невозможности сохранить его в тайне: находившийся в Хлынове татарский наместник своевременно известил хана Ибрагима не только о его подготовке, но и о численности и боевых возможностях войска Д. В. Ярославского.
Однако главная причина неудачи предпринятого в 1469 г. наступления на Казань заключалась в отсутствии у русского командования навыков стратегического планирования операций на нескольких театрах военных действий и их технического исполнения. По-видимому, не существовало тогда и специальной службы, ведавшей оперативной подготовкой движения войск по сходившимся направлениям.
Общий план кампании очень скоро подвергся ревизии. Из-за затянувшихся переговоров с ханом Ибрагимом воеводе Беззубцеву, находившемуся с войском в Нижнем Новгороде было предписано отправить в поход к Казани лишь часть своих полков, укомплектовав их исключительно добровольцами. Таким образом, всей операции придавался характер набега «охочих людей», вышедших из-под воли великого князя. Однако расчеты московских стратегов не учитывали настроения собравшихся в Нижнем Новгороде воинов. Получив приказ великого князя, в поход выступила вся рать, избрав новым воеводой Ивана Дмитриевича Руно. К. А. Беззубцев, согласно повелению Ивана III, остался в Нижнем Новгороде.
На рассвете 21 мая русские корабли подошли к Казани. Татары, застигнутые врасплох, не смогли отстоять посады, которые были выжжены московскими воинами. Опасаясь ответного нападения собиравшегося к Казани неприятельского войска, русская рать в полном порядке отступила вверх по Волге, став лагерем на Коровничем острове. По-видимому, И. Д. Руно хотел дождаться подхода Устюжского отряда, а возможно и вятчан, которым был послан призыв великого князя помочь его полкам под Казанью. Но договор о нейтралитете с Казанью и реальная угроза прекращения доставки хлеба в их край вынудили жителей Вятки остаться в стороне от шедшей на Волге войны. Более того, татары от своих наместников в Хлынове были подробно проинформированы о походе войска князя Даниила Васильевича Ярославского. Не дожидаясь соединения русских отрядов, противник решился напасть на Коровничий остров. Но неожиданного нападения не получилось. Бежавший из Казани русский пленник предупредил воевод о готовящейся атаке. Она была отбита, но Руно, опасавшийся новых нападений, перенес лагерь в более безопасное место — на Ирыхов остров. Однако имевшиеся у русской рати запасы продовольствия подошли к концу и из Нижнего Новгорода К. А. Беззубцев начал отводить полки к своей границе.
Узнав об отходе русских, хан Ибрагим послал в погоню за ними речную флотилию и большое конное войско. 23 июля 1469 г. (дата битвы установлена Н. С. Борисовым) произошло самое крупное сражение всего этого похода. Два войска вновь встретились у Звеничева Бора, но на этот раз противники бились не на земле, а на волжских волнах. Неоднократно русские насады и ушкуи обращали казанские корабли в бегство, но каждый раз татарские ладьи, прикрывшиеся конными стрелками с левого берега реки, быстро перестраивались и возобновляли свои нападения. Исход битвы остался неопределенным, но русскому войску удалось выйти из боя и без больших потерь вернуться в Нижний Новгород.
Менее удачно завершился поход Устюжского войска князя Д. В. Ярославского. К середине июля его насады еще были на Каме. В устье этой реки татары преградили русской флотилии дальнейший путь, поставив поперек Волги свои связанные корабли («Волгу судами заставили»). Произошел настоящий абордажный бой, в ходе которого русское войско потеряло 430 человек, то есть почти половину от своего первоначального числа. Среди павших был и воевода Д. В. Ярославский, в плену оказались Тимофей (Юрло) Михайлович Плещеев «со многими товарищы». Остатки русского войска, которое теперь вел князь Василий Ухтомский «скрозе рать тотарскую пробились» и ушли вверх по Волге мимо Казани к Нижнему Новгороду.
На этот раз пауза в военных действиях была непродолжительной — длилась она не более трех недель. В августе 1469 г. Иван III принял решение двинуть на Казань не только остатки Нижегородской и Устюжской ратей, но и свои лучшие войска, поставив во главе огромной армии своего брата князя Юрия Васильевича Дмитровского. В составе этой рати находились отряды и другого брата великого князя Андрея Васильевича. 1 сентября русские полки были уже у стен Казани. Попытка казанцев контратаковать была отбита и город был окружен. Вскоре русским воинам удалось перекрыть осажденным доступ к воде. Устрашенные русской силой татары поспешили начать мирные переговоры. По летописному свидетельству хан Ибрагим «видя себя в велице беде и начатъ посылати к князю Юрью, и добиша челом на всей воли великого князя». Главным пунктом заключенного соглашения стало согласие казанского «царя» выдать Москве «полон за 40 лет» — почти всех находившихся в Казани русских рабов.