Прорыв флота предполагалось совершить в следующем порядке: отряд главных сил, отряд прикрытия, арьергард и четыре конвоя. Отряду главных сил ставилась задача прикрытия первого и второго конвоев от мыса Юминда до острова Гогланд. Отряду прикрытия — защищать второй и третий конвои от острова Кери до острова Вайндло. Арьергарду — прикрывать с тыла третий и четвёртый конвои. В составе четырёх конвоев находились 107 кораблей и судов, 62 корабля охранения, а ещё 51 корабль и судно, участвующие в переходе, официально ни в один конвой включены не были. Всего из Таллина в поход 28 августа 1941 года вышли 225 кораблей и судов.
Отряд главных сил возглавлял новейший советский крейсер «Киров», на котором Таллин покидал не только командующий вице-адмирал Трибуц и всё руководство флота, но и члены правительства Эстонии. Кроме того, на «Кирове» вывозились ценности Госбанка Эстонской ССР.
Приказ о начале отхода войск и посадки на суда был отдан 27 августа в 11 утра. В 16 часов началась посадка раненых, учреждений флота и некоторых частей 10-го стрелкового корпуса. Эвакуация осуществлялась в условиях гитлеровских артобстрелов и налётов авиации противника.
Общее число людей на кораблях флота оценивается от 25 до 42 тысяч человек. Помимо моряков и военнослужащих, из Таллина эвакуировалось более 10 000 гражданских лиц.
Завершить погрузку людей на суда удалось лишь к утру 28 августа. В то время как план предусматривал начало движения первого конвоя не позднее 22:00 27 августа, в действительности это произошло лишь к полудню следующего дня. Причиной стало то, что волнение на море достигло 7 баллов, и тральщики, которые должны были обеспечить прохождение через мины, не могли идти с поставленными тралами.
Когда движение судов всё-таки началось, стало понятно, что форсировать минное заграждение «Юминда» придётся не в дневное, а в ночное время, что повышало риск в несколько раз.
Тральщики могли идти со скоростью не более 6 узлов, что сдерживало движение всех кораблей конвоя.
Первые обстрелы береговой артиллерии и атаки торпедных катеров были отбиты. Однако мины и бомбардировщики противника делали своё чёрное дело. К наступлению ночи были потеряны ледокол «Кришьянис Вальдемарс», штабной корабль флота «Вирония» и спасательное судно «Сатурн». Но самой тяжёлой потерей первых часов перехода стала гибель на минах транспорта «Алев». На его борту находились около 1200 человек, в основном раненые. Судно затонуло стремительно, из всех, кто находился на борту, удалось спасти лишь шестерых.
В зоне плотного минирования, куда корабли флота подошли к наступлению ночи, не проводилась предварительная разведка. В результате два тральщика подорвались на минах и затонули, ещё два были серьёзно повреждены. Корабли стали гибнуть один за одним. Подорвались на минах и пошли на дно эсминцы «Яков Свердлов» и «Скорый», эсминцы «Гордый» и «Славный» получили тяжёлые повреждения. Арьергард, следовавший вообще без тральщиков, понёс особенно тяжёлые потери.
Вслед за боевыми кораблями подрывались на минах переполненные людьми транспортные суда. Из 905 человек, находившихся на борту транспорта «Элла», спасли лишь 49, из 1500 человек на борту «Эверита» — всего десятерых. В итоге командующий отдал приказ судам встать на якорь до наступления светлого времени суток.
При этом решение было запоздалым — корабли главных сил практически прошли самую опасную зону минных полей, и теперь им необходимо было как можно скорее идти к Кронштадту. Остановка дорого обойдётся участникам перехода.
Общие потери флота к этому моменту составляли 26 кораблей потопленными, 5 повреждёнными. Кроме того, два буксира, не имевших вооружения, были захвачены торпедными катерами ВМС Финляндии.
Движение кораблей было возобновлено в 5:40 29 августа. Боевые корабли отрядов главных сил, прикрытия и арьергарда полным ходом ушли в Кронштадт. Остальные корабли продолжали прохождение через минные заграждения, которое завершилось около 10 утра. Одновременно подбирали из воды тех, кто уцелел при гибели судов, подорвавшихся на минах.
Около часа дня у острова Родшер погиб транспорт «Аусма», около трёх часов дня — «Тобол», в 16:15 — «Калпакс», около 18:00 — «Атис Кронвалдс», в 20:30 — «Вторая пятилетка», в 21:00 — «Вормси». С каждым из этих судов на дно Балтики уходили сотни людей. Ещё несколько транспортов получили повреждения и были уничтожены немецкой авиацией 30 августа.
Передовые корабли флота прибыли в Кронштадт около 17:30 29 августа. Всего к концу этого дня переход завершили 24 корабля. 16 небольшим судам удалось добраться до базы на острове Гогланд.
На следующий день, 30 августа, в Кронштадт пришли 107 судов — все, кому удалось прорваться. В последующие дни под ударами авиации гитлеровцев происходила перевозка тех, кто добрался до острова Гогланд, в Кронштадт. На сей раз удалось избежать потерь. Всего с Гогланда было перевезено более 11 тысяч человек.
В ходе Таллинского прорыва Балтийский флот потерял 19 боевых кораблей, включая 5 эсминцев и 2 подводные лодки, а также 18 транспортов и 25 вспомогательных судов.
Данные о людских потерях весьма существенно расходятся. На мемориальной доске в память погибших участников Таллинского перехода указано 10 903 погибших. Общее количество тех, кто добрался до Кронштадта, колеблется от 16 до 27 тысяч человек.