Jego ojciec i dziadek byli admirałami marynarki wojennej USA.
Podczas wojny w Wietnamie służył jako pilot marynarki. W 1967 roku trafił do niewoli. Dość szybko mógł ją opuścić w drodze wymiany jeńców, dzięki wysokiej pozycji jego ojca w armii, ale - choć był torturowany - odmówił opuszczenia swoich towarzyszy. Uwolniony został dopiero w 1973 roku. Ze służby odszedł w randze komandora.
W 1982 roku dostał się do Izby Reprezentantów, a pięć lat później do Senatu Stanów Zjednoczonych.
W 2000 roku po raz pierwszy ubiegał się o nominację republikanów na urząd prezydenta USA. Zdobył ją jednak wówczas George W. Bush, ówczesny gubernator Teksasu, choć McCain wygrał prawybory w New Hampshire, Michigan, Arizonie, Rhode Island, Connecticut i Vermont.
W 2008 roku zdobył nominację przed listopadowymi wyborami prezydenckimi, w których zmierzył się z kandydatem Demokratów - Barackiem Obamą. Obama został pierwszym w historii USA czarnoskórym prezydentem.
McCain często krytykował poczynania swoich republikańskich kolegów, m. in. wysłanie zbyt słabych sił do Iraku czy wprowadzenie ulg podatkowych dla zamożnych. Z racji często liberalnych poglądów jest uważany za RINO, czyli republikanina tylko z nazwy.