Lee poursuivit son offensive avec la Bataille de Gaines's Mill (), lançant la charge confédérée la plus importante de la guerre contre les positions de Porter. Mais l'assaut était mal coordonné et les lignes de l'Union résistèrent pendant la plus grande partie de la journée, jusqu'à ce que Lee parvienne à les enfoncer, forçant McClellan à reculer à nouveau pour se mettre en sûreté à Harrison's Landing, sur la James River.