El 1 de mayo estalló la batalla del río Yalu, en la cual las tropas japonesas, después de cruzar el río sin oposición, tomaron por asalto las posiciones rusas. El choque había sido cuidadosamente preparado por los japoneses, que sorprendieron a las unidades enemigas mediante una serie de ataque fingidos en diversos puntos del río. Fue la primera batalla terrestre de la guerra. Tras la victoria, las tropas japonesas procedieron a desembarcar en varios puntos de la costa manchú, lo que obligó a los rusos a retroceder a Port Arthur. El 2.º Ejército nipón desembarcó sesenta kilómetros al norte de Dalián, en el cuello de la península de Liaodong, mientras que el 4.º lo hizo al este y se unió al 1.º, que avanzaba en dirección noroeste desde el Yalu. El 26 de mayo, el 2.º Ejército del general Oku Yasukata asaltó la línea fortificada rusa erigida a veinticinco kilómetros al norte de Dalián en la llamada batalla de Nanshan, que cortaba el camino hacia el sur y contaba con tres mil soldados. Pese a repeler varios encarnizados asaltos japoneses, el coronel al mando de la línea no obtuvo los refuerzos que solicitó a la retaguardia y tuvo que ceder finalmente la posición. Tras conquistar Nanshan, los japoneses se adueñaron también de Dalián. Obtuvieron así un puerto en la península y pudieron cortar las comunicaciones entre Port Arthur y Mukden, a donde se había trasladado el 5 de mayo Alekséyev por orden del zar. Los avances, sin embargo, les costaron a los nipones gran número de bajas: en la toma de la línea de Nanshan habían perdido cinco de sus treinta mil soldados.