Шведская эскадра, шедшая к Архангельску, маскировалась под торговый караван под флагами Англии и Голландии. Днем 25 июня шведы взяли в плен караул капитана Николая Крыкова (всего 20 человек), которые выехали для досмотра кораблей с Мудьюжского острова. На военном совете эскадры было решено взять крепость и уничтожить гарнизон, а затем идти на Архангельск.
Для штурма крепости сформировали передовой отряд, состоявший из трех кораблей с малой осадкой: шнявы «Мьёхунден» и галиотов «Тёва-литед» и «Фалькен». Численность команд на этих судах составила 120 солдат и матросов, не считая офицеров и унтер-офицеров, а вооружение — 19 пушек. Кроме того, в отряд включили три хорошо вооруженные шлюпки. Корабли шли под нейтральными флагами, постоянно промеряя глубину.
25 июня поздно вечером, шведские суда подошли к Новодвинской крепости. Время нападения было обусловлено приливом, воспользовавшись которым, противник и рассчитывал проскочить мели.
К приходу шведов крепость хоть и не была построена, но на ее месте был создан мощный оборонительный узел, состоящий из Большой батареи — строившегося Флажного бастиона с 10 пушками; батареи на Марковом острове, вооруженной 15 пушками; двумя малыми батареями, на которых было по две и три пушки. Также был возведен редут для укрытия пехоты и прикрытия позиции с севера на случай высадки на берег шведского десанта.
Мудьюжский караул не смог передать сигнал тревоги гарнизону крепости, а потому для досмотра подошедших судов на карбасе выехал командир Холмогорского гайдуцкого полка — солдатский голова Григорий Животовский. Его полк составлял основу гарнизона крепости. Досмотровая команда уже собиралась подняться на борт одного из неприятельских кораблей, когда один из солдат увидел спрятанные пушки и шведских солдат, скрывающихся на палубе. Отвалив от борта шведского парусника, карбас с караулом поспешил к берегу, чтобы предупредить о приходе неприятеля.
Противник, поняв, что разоблачен, поднял на мачтах шведские флаги, и корабли бросились преследовать карбас с караулом, открыв по нему огонь, убив и ранив нескольких человек. Ранен был и Г. Н. Животовский. Примерно в 300–500 метрах от Большой батареи, будущего Флажного бастиона крепости, погоня прервалась. Два шведских корабля: шнява «Мьёхунден» и галиот «Фалькен» прочно сели на мель носом к крепости, третий парусник миновал песчаный плен и остался на плаву, из опасения не приближаясь к потерпевшим бедствие.
Иван Седунов (Рябов) и переводчик Дмитрий Борисов Дьячков, ранее захваченные шведами в плен, находились на борту шведской шнявы, и Рябов умышленно вел шведов значительно правее фарватера в районе мелей, однако при появлении русского караула пленных заперли в трюме, а с началом погони расстреляли. Дмитрий Дьячков погиб, а Иван Седунов, будучи раненым, притворился мертвым и, улучив момент, прыгнул за борт.
С отливом, по команде полковника Г. Животовского, солдаты и бывшие на крепости работные люди вышли на всех имевшихся в их распоряжении мелких судах на абордаж севших на мель вражеских кораблей, а солдаты с Маркова острова пошли вброд по мели. В результате артиллерийской дуэли были разбиты два шведских парусника. Поняв всю бесполезность дальнейшего сопротивления, шведы на шлюпках добрались до уцелевшего галиота и около 10–11 часов дня 26 июня бежали к оставшимся судам своей эскадры с небольшими потерями в личном составе. С шведской стороны известно о гибели 6 человек, о числе раненых источники умалчивают. В плен никого из шведов взять не удалось.
Потери с русской стороны — тринадцать человек. Шведы увезли с собой в плен капитана Н. Крыкова и 8 человек из состава мудьюжского караула. Был расстрелян Дмитрий Дьячков (Борисов), ранены Иван Седунов, Григорий Животовский и несколько человек, бывших вместе с ним в карбасе. Всего «раненых и извлеченных» 17 человек.
Вместо раненого Г. Н. Животовского артиллерийской дуэлью с Большой батареи со шведами успешно руководил инженер Георг Резе, имевший боевой опыт, приобретенный им в Европе и под Азовом.
По поводу победы Петр I написал одному из своих ближайших соратников Ф. А. Апраксину: «Я не мог вашему превосходительству оставить без ведома, что ныне учинилося у города Архангельскова зело чюдесно… Сим нечаянным счастием поздравляю вам; где чего не чаяли, Бог дал».
Ивана Седунова (Рябова), нарушившего указ о запрете выхода в море, что привело к его пленению шведами, арестовал воевода князь А. П. Прозоровский. народного героя и нарушителя порядка Петр I освободил своим указом в октябре 1701 года и затребовал его к себе в Москву.
Победителям достались богатые по тем временам трофеи: 5 шведских флагов, 13 пушек, 200 ядер и множество различного имущества. Из этих трофеев, еще в июле 1701 года, Петр I распорядился три малые пушки на вертлюгах передать в дар архиепископу Афанасию, отметив его вклад в строительство крепости и организацию обороны Архангельска.
Победа 25 июня 1701 года обеспечила возможность Полтавской победы — поворотного момента в отечественной и европейской истории начала XVIII века. Благодаря разгрому шведской эскадры был сохранен единственный порт России, через который осуществлялась почти вся внешняя торговля, поступало новейшее европейское оружие и так необходимые стратегические материалы. Была сохранена судоверфь, обеспечивавшая зарождавшийся военно-морской и государственный торговый флот России. Именно здесь было положено начало победоносного окончания Северной войны.