28 июля (10 августа) с 4 часов 30 минут начался выход русской эскадры. Он продолжался в течение 4 часов. На внешний рейд вышли броненосцы «Цесаревич» под флагом контр-адмирала В.К. Витгефта (командир капитан 1-го ранга Н.М. Иванов), «Ретвизан» (командир капитан 1-го ранга Э.Н. Щенснович), «Победа» (командир капитан 1-го ранга В.М. Зацарённый), «Пересвет», на котором находился второй флагман эскадры контр-адмирал П.П. Ухтомский (командир капитан 1-го ранга В.А. Бойсман), «Севастополь» (командир капитан 1-го ранга Н.О. Эссен), «Полтава» (командир капитан 1-го ранга И.Н. Успенский); крейсера «Аскольд» под флагом контр-адмирала Н.К. Рейценштейна (командир капитан 1-го ранга К.А. Грамматчиков), «Паллада» (командир капитан 1-го ранга В.М. Сарнавский), «Диана» (командир капитан 2-го ранга А.А. Ливен), «Новик» (командир капитан 2-го ранга М.В. Шульц); эскадренные миноносцы «Выносливый» (брейд-вымпел капитана 2-го ранга Е.П. Елисеева), «Властный» (командир лейтенант А.А. Ковалевский), «Грозовой» (командир лейтенант А.А. Бровцын), «Бойкий» (командир лейтенант И.И. Подъяпольский), «Бесшумный» (командир лейтенант Д.Н. Максимов), «Бесстрашный» (командир лейтенант П.Л. Трухачев), «Беспощадный» (командир лейтенант Д.С. Михайлов), «Бурный» (командир лейтенант Н.И. Тырков). Вместе с боевыми кораблями из Порт-Артура вышло госпитальное судно «Монголия».
Стояло тихое, ясное утро. Ветер достигал 1 балла. На горизонте виднелись японские миноносцы. В 8 часов 15 минут русская эскадра в кильватерной колонне двинулась в направлении на мыс Ляотешань. В голове колонны шли эскадренные броненосцы, за ними — крейсера. На траверзе броненосцев держались эскадренные миноносцы. Через 30 минут Витгефт передал по эскадре приказ «приготовиться к бою», а затем было объявлено: «Флот извещается, что государь император повелел идти во Владивосток». В 10 часов 30 минут Витгефт отпустил тральщики и направил эскадру в море, положив курс 135 градусов.
Адмирал Того после 6 часов утра стал получать известия о выходе русских кораблей. Замысел Того состоял в том, чтобы охватить голову русской эскадры и сосредоточенным огнем по флагманским кораблям лишить ее управления. В 12 часов 20 минут японцы с дистанции 80 кабельтовых открыли огонь.
Когда дистанция уменьшилась до 65 кабельтовых, русские корабли открыли ответный огонь. Однако, вместо того чтобы решительно атаковать противника и тем самым обеспечить успех прорыва, русский командующий маневрировал, чтобы избежать боевых столкновений. При этом он жертвовал столь важными элементами, как выгодная позиция и курсовой угол.
Не лучше маневрировал и адмирал Того. Пытаясь охватить голову русской эскадры, он настолько неудачно рассчитал свой маневр, что вместо охвата головы русской эскадры оказался за кормой у нее. Неумело японцы использовали и свои крейсера, которые хотя и окружили русскую эскадру, но, не имея определенной задачи, даже и не пытались сковать ее боем и тем самым обеспечить удар главных сил своего флота. Русским кораблям удалось оторваться от противника. В 14 часов 30 минут сражение временно прекратилось. Через два часа японцы, имевшие преимущество в скорости хода, догнали русскую эскадру и снова вступили в бой, во время которого осколком был убит Витгефт.
С гибелью Витгефта управление эскадрой было потеряно. Строй русских кораблей нарушился, каждое судно начало действовать самостоятельно. Подошла ночь. С наступлением темноты корабли противника прекратили огонь. В атаку против отходившей русской эскадры адмирал Того направил миноносцы, а сам с броненосными кораблями пошел в Корейский пролив. Атаки японских миноносцев из-за их слабой подготовки к ночным действиям носили нерешительный характер и не достигли своей цели.
10 из 18 вымпелов русской эскадры в составе 5 броненосцев, 1 крейсера и 4 эскадренных миноносцев вернулись в Порт-Артур. Остальные корабли, за исключением крейсера «Новик», имея повреждения, зашли в нейтральные порты, где были интернированы.
Русской эскадре не удалось решить поставленную задачу и прорваться во Владивосток. Одной из важнейших причин было отсутствие плана морского сражения. Перед командирами кораблей не было поставлено конкретных боевых задач. На случай выхода из строя флагмана не было предусмотрено передачи командования. Адмирал Витгефт не стремился к занятию выгодной для ведения боя позиции. Он делал все возможное, чтобы корабли эскадры уклонялись от боевых действий.
Витгефт тратил силы на отражение ударов противника, а не на выполнение главной задачи — выиграть бой. В итоге он не смог обеспечить прорыв и решить основную задачу флота, вытекавшую из общего стратегического плана войны с Японией, — разбить японский флот в морском сражении и завоевать господство на море.
В бою с русской стороны действовали главным образом эскадренные броненосцы. Крейсера и миноносцы не были использованы в полной мере. Личный состав русской эскадры проявил высокое мужество и стойкость. И только неумелые действия командующего эскадрой и его ближайших помощников не позволили решить поставленную задачу.