본관은 장흥(長興). 자는 도충(道冲), 호는 준봉(隼峰). 광주 출신. 형조좌랑 고운(高雲)의 증손으로, 할아버지는 호조참의 고맹영(高孟英), 아버지는 의병장 고경명(高敬命), 어머니는 김백균(金百鈞)의 딸이다.
1570년(선조 3) 진사가 되고 1577년 별시문과에 병과로 급제해 교서관정자가 되었다.
이어서 전적 · 감찰 · 예조좌랑을 거쳐 1588년 임피현령(臨陂縣令)이 되었으나 사헌부의 탄핵을 받고 파직되었다. 1591년 지제교(知製敎)로 기용되었으나 다시 탄핵을 받고 향리인 광주로 내려갔다. 1592년 임진왜란이 일어나자 전라도관찰사 이광(李洸)은 전라도 관군을 인솔하고 서울로 향하다가 공주에 이르렀을 때 왕이 북으로 떠났다는 소식을 듣고 군대를 해산했다.
아버지 고경명의 뜻에 따라 아우 고인후(高因厚)와 함께 각지에 흩어진 군졸들을 설득해 다시 모아 수원에 있는 광주목사 정윤우(丁允佑)에게 인계하고, 돌아오는 길에 태인에서 고경명의 의병군과 합류하였다. 다시 아버지의 명에 따라 금구 · 김제 · 임피 등지에 격문을 돌려 의병을 모집하고 군량을 모아 여산의 본진에 돌아왔다.
이 때 왜적이 황간 · 영동에 머무르며 장차 금산을 공략하고 전주를 경유, 호남 지방을 유린하려 한다는 정보를 입수한 뒤, 금산으로 가서 방어사 곽영(郭嶸)과 더불어 왜적의 침략을 막기로 했다. 그러나 왜적이 침입하자 싸우기도 전에 관군은 붕괴되고 의병군마저 흩어져 아버지와 아우가 전사하자 시체를 거두어 장례를 치렀다.
이듬해 400여 명의 의병을 규합, 복수의병군(復讐義兵軍)을 조직해 하동에 이르러 왜적의 형세를 살폈다. 이때 왜적은 대군으로 진주를 공략한 뒤 호남지방으로 침입하려 하므로 진주를 지키기 위해 휘하 의병을 이끌고 진주성으로 들어가 김해부사 이종인(李宗仁), 창의사 김천일(金千鎰), 충청병사 황진(黃進), 경상병사 최경회(崔慶會) 등과 진주성을 사수하기로 했다.
진주성이 적에게 포위되어 격전이 계속된 지 9일째인 6월 29일 목사 서예원(徐禮元)이 적의 대공세 앞에 겁을 먹고 도망치자 진중은 혼란을 일으켜 무너지게 되었다. 왜적이 성안으로 물밀듯이 몰려와 전세가 불리함을 느낀 고종후는 북향해 재배한 뒤 김천일 · 최경회와 함께 남강에 투신, 순절했는데, 이들 세 사람을 ‘삼장사(三壯士)’라고 불렀다.
도승지에 이어 이조판서에 추증되었으며, 광주의 포충사(褒忠祠)와 진주의 충민사(忠愍祠)에 제향되었다. 시호는 효열(孝烈)이다.