When the War began in 1860, he was serving on the frontier as a Texas Ranger under Col. John S. "Rip" Ford. On 20 Apr 1861, he enlisted at Austin as 1st Lieut. in Co. D, 1st Texas Cavalry (or Mounted Riflemen; McCulloch's Regt). Sometime early in 1862, he transferred to the 36th Texas Cavalry.
Late in 1862 or early 1863, he was appointed Capt, Co. A, 1st Battalion, Arizona Brigade. He resigned from this unit because the company was depleted of men, and he hoped to serve elsewhere. This resignation was not formally accepted, but Ragsdale went to Louisiana believing it had been. Within a few months, he was in command of Ragsdale's Battalion, Texas Cavalry.
During the summer of 1863, desperate to get into action somewhere, he enlisted in Louisiana as a private in Co. H, 36th Texas Cavalry. While on furlough in Texas, he learned that he had not been officially relieved as a captain in the Arizona Brigade. In Oct 1863, he is listed again as capt. of Co. A, 1st Battalion but actually assumed command of the battalion. By Feb 1864, he was a major, again commanding Ragsdale's Bttn, Texas Cavalry, stationed at Sabine Pass. A year later, he had been promoted to Lieut. Col. commanding the battalion.
On 17 Jul 1865, he gave his parole at Houston as Lieut. Col. of Gould’s Regiment of Dismounted Cavalry. However hard he tried, he saw no combat at all during the war.
About 1870 he was elected to the first of two (nonconsecutive) terms as district attorney in Burleson County. In 1871, he served out an unexpired term in the state legislature from Burleson County.