Korea a Koreai-félszigetből (a szárazföldből) és 3960 közeli szigetből áll. A félsziget Északkelet-Ázsiában, Kína és Japán között helyezkedik el. Északnyugaton az Amnok folyó (Yalu folyó) választja el Koreát Kínától, északkeleten pedig a Duman folyó (Tumen folyó) választja el Koreát Kínától és Oroszországtól. Nyugaton a Sárga-tenger, délen a Kelet-kínai-tenger és a Koreai-szoros, keleten pedig a Japán-tenger (Keleti-tenger) fekszik. Nevezetes szigetek közé tartozik a Csedzsu-sziget (Jejudo), az Ulleung-sziget (Ulleungdo) és a Liancourt-sziklák.
Korea területe 223 179 km2, ami hasonló az Egyesült Királyság területéhez (244 100 km2) vagy az U.Minnesota amerikai államhoz (225 171 km2). A szigeteket nem számítva a Koreai-félsziget területe 220 847 km2 . A félsziget mérete észak-déli irányban kb. 1100 km, kelet-nyugati irányban pedig 300 km.
A félsziget déli és nyugati részén jól fejlett síkságok találhatók, míg a keleti és északi részek hegyvidéki jellegűek. Korea legmagasabb hegye, a Paektu vagy Paektusan hegy (2744 m) a kínai határon áll. A Paektu hegy déli nyúlványa, a Gaema-hegység nevű fennsík főként a kainozoikus orogenezis során emelkedett ki, és részben vulkáni anyag borítja. A Gaema Gowontól délre (a Gaema-fennsík) a félsziget keleti partja mentén egymást követő magas hegyek találhatók. Ezt a hegyvonulatot Baekdudaegannak nevezik. Néhány jelentős hegy közé tartozik a Sobaek vagy Sobaeksan (1 439 m vagy 4 721 ft), a Kumgang vagy Kumgangsan (1 638 m vagy 5 374 ft), a Seorak vagy Seoraksan (1 708 m vagy 5 604 ft), a Taebaek vagy Taebaeksan (1 567 m vagy 5 141 ft) és a Jiri vagy Jirisan (1 915 m vagy 6 283 ft). Több alacsonyabb, másodlagos hegyvonulat is található, amelyek iránya szinte merőleges a Baekdudaeganéra. Ezek a mezozoikum orogenezis tektonikai vonala mentén alakultak ki, és irányuk alapvetően északnyugati.
A szárazföld legtöbb ősi hegységével ellentétben Korea számos fontos szigete vulkáni tevékenység révén alakult ki a kainozoikum orogenezisében. A déli partoknál fekvő Jeju-sziget egy nagy vulkanikus sziget, amelynek fő hegye, a Halla vagy Hallasan-hegy (1950 m) Dél-Korea legmagasabb hegye. Az Ulleung-sziget egy vulkanikus sziget a Japán-tengerben, amelynek összetétele felsikusabb, mint Jeju-dóé. A vulkanikus szigetek általában fiatalabbak, minél nyugatabbra vannak.
Mivel a hegyvidék többnyire a félsziget keleti részén található, a fő folyók általában nyugat felé folynak. Két kivétel a dél felé folyó Nakdong folyó (Nakdonggang) és a Seomjin folyó (Seomjingang). A nyugat felé folyó fontos folyók közé tartozik az Amnok folyó, a Chongchon folyó (Chongchongang), a Taedong folyó (Taedonggang), a Han folyó (Hangang), a Geum folyó (Geumgang) és a Yeongsan folyó (Yeongsangang). Ezek a folyók hatalmas árterekkel rendelkeznek, és ideális környezetet biztosítanak a nedves rizstermesztéshez.
Korea déli és délnyugati partvidéke egy jól fejlett ria partvidéket alkot, amelyet koreaiul Dadohae-jin néven ismernek. Ez a kanyargós partvonal enyhe tengert eredményez, és ez a nyugodt környezet lehetővé teszi a biztonságos hajózást, halászatot és hínártermesztést. Az összetett partvonal mellett a Koreai-félsziget nyugati partvidékén rendkívül magas az árapály amplitúdója (Incheonnál, a nyugati partvidék közepe táján akár 9 m vagy 30 láb is lehet). A déli és nyugati partvidéken hatalmas hullámtér alakult ki.