Schaefer served in the United States Marine Corps from 1955 to 1957 and attained the rank of sergeant. He then worked as a public relations consultant.
In 1976, he was elected to a two-year term in the Colorado General Assembly. Two years later, he was elected to the Colorado State Senate, where he served from 1979 to 1983. He was a delegate to Colorado State Republican conventions between 1972 and 1982.
Schaefer was elected as a Republican to the Ninety-eighth United States Congress, by special election, to fill the vacancy caused by the death of United States Representative-elect Jack Swigert, a former astronaut who died of cancer before he could take his seat in Congress.[4] Schaefer polled 49,816 votes (63 percent) in the special election to 27,779 ballots (35 percent) for the Democrat Steve Hogan. No Democrat challenged Schaefer in 1984. In successive elections from 1986 to 1996, he polled more than 60 percent of the vote against each of his Democratic opponents. In his last race in 1996, he received 146,018 votes (62 percent) to 88,600 ballots (38 percent) for the Democrat Joan Fitz-Gerald.[5]