Balch was promoted to the rank of Lieutenant in August 1850. In 1851-1855 he was an officer on the sloop of war Plymouth in the Far East. In April 1854, during that tour, he was wounded in action at Shanghai, China. After briefly serving in the Great Lakes' gunboat Michigan in 1855, Lieutenant Balch was assigned to the Washington Navy Yard for nearly two years. He went back to sea in Plymouth in 1857, when she was part of the Home Squadron, transferring to the sloop of war Jamestown later in the year. From late 1858 until October 1860 he served in the sloop of war St. Marys on the Pacific Squadron.
As the political crisis of 1860–1861 developed into Civil War, Lieutenant Balch was ashore, at the Naval Academy and the Naval Observatory. From mid-1861 to mid-1862 he was commanding officer of the steam sloop Pocahontas, an active blockader along the coasts of South Carolina and Georgia, and received promotion to the rank of Commander during this time. He spent most of the rest of the Civil War in command of USS Pawnee, which was also employed along the Confederacy's south Atlantic coast.
While back at the Washington Navy Yard in 1865–1868, Balch was promoted to Captain. He commanded USS Contoocook (renamed Albany in 1869) during 1868–1870, then returned to the Nation's Capital for several assignments during the 1870s and in mid-decade was Governor of the Naval Asylum, at Philadelphia, Pennsylvania. After attaining the rank of Rear Admiral in June 1878, Balch was Superintendent of the U.S. Naval Academy, at Annapolis, Maryland (1879–1881), then commanded the Pacific Station until retired from active duty in January 1883.
Rear Admiral George B. Balch died at Raleigh, North Carolina on 16 April 1908. He is buried at the U.S. Naval Academy Cemetary.