Rodes graduated from Virginia Military Institute in 1848. He taught at the school as an assistant professor until 1851. He left when a promotion he wanted to full professor was given instead to Thomas J. "Stonewall" Jackson, a future Confederate general and commander of his. Rodes used his civil engineering skills to become chief engineer for the Alabama & Chattanooga Railroad in Tuscaloosa, Alabama.
He held this position until the start of the Civil War. Although born a Virginian, he chose to serve his adopted state of Alabama.
He started his Confederate service as a Colonel in command of the 5th Alabama Infantry regiment, in the brigade commanded by Major Gen. Richard S. Ewell, with which he first saw combat at the 1st Bull Run, He was promoted to Brigadier General on October 21, 1861, and commanded a brigade under Major Gen. Daniel H. Hill. In the Peninsula Campaign, Rodes was wounded in the arm at Seven Pines and was assigned to light duty in the defenses of Richmond, Virginia while he recuperated.
He recovered in time for Gen. Robert E. Lee's first invasion of the north in September, 1862, fighting at South Mountain and Antietam. At Antietam, he commanded one of two brigades that held out so long against the Union assault on the sunken road, or "Bloody Lane", at the center of the Confederate line, suffering heavy casualties. Rodes was lightly wounded by shell fragments.
At Chancellorsville, Rodes was a division commander in Stonewall Jackson's corps. He was the only division-level commander in Lee's army who had not graduated from West Point. He was temporarily placed in command of the corps on May 2, 1863, when Jackson was mortally wounded and Lieutenant Gen. A.P. Hill was also wounded, but Lee quickly replaced him with the more experienced Major Gen. J.E.B. Stuart. Jackson on his deathbed recommended that Rodes be promoted to major general and this promotion was back-dated to be effective May 2nd.
When Lee reorganized the Army of Northern Virginia to compensate for the loss of Jackson, Rodes joined the II Corps under Ewell. At Gettysburg, on July 1, Rodes led the assault south from Oak Hill against the right flank of the Union I Corps. Although he successfully routed the division of Major Gen. John C. Robinson and drove it back through the town, the attack was not as well coordinated or pursued as aggressively as his reputation would have implied. His division sat mostly idle for the remaining two days of the battle. After performing poorly at Gettysburg, and recovered his reputation somewhat by performing better at Spotsylvania Court House.
Rodes continued to fight with Ewell's corps through the Overland Campaign of Gen. Ulysses S. Grant. Ewell was replaced by Major Gen. Jubal A. Early and his corps was sent by Lee to the Shenandoah Valley to draw Union forces away from the Seige of Petersburg, in the Valley Campaign. They conducted a long and successful raid down the Valley, into Maryland, and reached the outskirts of Washington, D.C., before turning back. Major Gen. Philip Sheridan was sent by Grant to drive Early from the Valley.
On September 19, 1864, Sheridan attacked the Confederates at Opequon/3rd Winchester. Several wives of Confederate officers were chased from town during the attack and Rodes managed to save Major Gen. John B. Gordon's wife from capture. Rodes and Gordon prepared to attack Sheridan's forces when Rodes was struck in the back of his head by a Union shell fragment. He died on the field outside Winchester.
Rodes was a modest but inspiring leader. He was mourned by the Confederacy as a promising, brave, and aggressive officer killed before he could achieve greatness. Lee and other high-ranking officers wrote sympathetic statements. He was buried in Spring Hill Cemetery, Lynchburg, Virginia.