Mesto leží na sútoku Dunaja a Váhu, na juhovýchodnom okraji Podunajskej roviny na ľavom brehu Dunaja a je väčšou časťou historického sídla bývalého Uhorska. Po prvej svetovej vojne bola hraničná línia novozaloženého Česko-Slovenska stanovená cez stred rieky, čím došlo k oddeleniu mestskej časti Újszőny (dnes Komárom) na pravom brehu Dunaja, pripojenej k mestu v roku 1896. Obe mestá sú spojené mostami – cestným a železničným.