With McClellan close on his tail, Johnston made a quick stand at Williams and then continued on to Richmond. Near Richmond Johnston was out of range of the Union gunboats and could turn around and attempt to take out part of McClellan's large army hoping of turning him around. The task was simpler than Johnston had anticipated, for McClellan, due to the size of his army, had to split his army into two unequal sizes the bigger of the two was north of Chickanhominy River. Although there were quite a few crossings across the river, most were impossible to cross because of spring flooding.
Johnston planned to attack the two southern ranks while Magruder and A.P.Hill divisions held the upper bulk of McClellan's army to the north of the river. Johnston than used Longstreet's, Whiting's, D.H. Hill's, and Huger's divisions to attack Keyes and Heintzelman south of the river. Longstreet, Hill, and Huger, were to move in nearly parallel positions and then attack Keyes' right, center, and left flanks simultaneously, hopefully crushing the division. The battle did not go nearly as planned, due to the bad communication between generals and disobedience. When the time came for Davis and Lee to see what Johnston's plans of attack were he would not tell them. Further more, he launched the attack without there approval, making it a not very credited battle. Second, Longstreet instead of marching straight east, marched south then east loosing about eight hours. After waiting several hours at the battle sight D.H. Hill decided to make a solo attack and he did. The Confederate pushed hard and strong but reinforcements from Sumner in the north halted the Rebels push to break Keyes' division at Seven Pines.
The Confederates had lost an excellent chance and breaking McClellan's army but as the situation progressed that didn't matter. Due to the aggressiveness of Hill's army McClellan was sure that the Confederate army was far superior to his 100,000 men and decided that another attack would be foolish and a suicide for his men. So once again McClellan stalled and waited for backup. McClellan suffered about 5,000 dead, missing, or injured while the Confederates lost closer to 6,000. The Confederates, however, lost the command of General Johnston, but gained what may be one of the greatest generals of all time, Robert E. Lee.