화력발전은 열원(熱源) 및 원동기(原動機)에 따라서 크게 기력발전(汽力發電)·내연력발전(內燃力發電)·특수화력발전으로 나누어진다.
기력발전은 석탄·석유 등의 화석 연료(化石燃料)를 연소시킬 때 발생하는 열에너지로 증기를 만들고 이것을 열기관에 보내어 기계적 에너지를 얻고 이 기계적 에너지로 회전기를 회전시킴으로써 전기적 에너지를 얻는 방식이다. 원자력발전은 연료가 원자력에 의한 열이라는 점을 제외하면 석탄이나 중유에 의한 발전과 같으며, 기력발전에 포함된다.
내연력발전은 기체연료 또는 액체연료를 기화시킨 다음 점화, 폭발될 때 얻어지는 고압력의 가스를 직접 이용해서 기계적 에너지를 얻고 이 기계적 에너지를 이용하여 회전기를 회전시킴으로써 전기적 에너지를 얻는 방식 이다. 특수화력발전은 열공급발전(熱供給發電)·폐열이용발전(廢熱利用發電)·이류식발전(二流式發電)·지열발전(地熱發電)·가스터빈발전 등이 있다.
1981년에는 화력발전의 설비용량이 8,047㎿로서 전체 발전설비의 81.8%에 차지하였다. 1991년에는 1만 1050㎿로서 1981년 대비 37% 정도 증가하였고 전체 발전설비용량에서는 52.3%로 그 비중은 감소하였다.
2001년에는 화력발전의 설비용량은 3만 3267㎿에 달하며, 전체 발전설비용량의 65.4%를 차지하게 되었다. 2012년에는 화력발전의 설비용량이 4만 9537㎿를 차지하였는데, 이는 전체 발전설비의 60.6%에 해당된다. 결과적으로 약 30년간 화력발전의 설비용량은 6배 이상 증가하였다.
2014년 기준으로 화력발전소는 한국남부발전㈜, 한국남동발전㈜, 한국동서발전㈜, 한국서부발전㈜, 한국중부발전㈜에서 관할하고 있다.
한국남부발전㈜은 하동·영남·남제주·신인천·부산·영월 등, 한국남동발전㈜은 삼천포·영흥·영동·여수 등, 한국동서발전㈜은 당진·울산·호남·동해 등, 한국서부발전㈜은 태안·평택·서인천·군산 등, 한국중부발전㈜은 보령·인천·서울·서천·제주 등의 발전소를 운영하고 있다.