函館は東経140度44分、北緯41度46分(市役所の位置を中心とする)に位置し、北海道の最南端の都市として津軽海峡をへだてて本州青森県と向かい合っている。同一経度にはソビエト連邦のニコライエフスク、わが国の青森、白石、オーストラリアのノーマントなどの諸都市があり、また同一緯度にはローマ、シカゴ、クリーブランド、ニューヨーク、タシケント、瀋陽(シェンヤン)などの代表的な大都市がある。
函館では市制を施行してから過去7回にわたって市域の変更が行われたが、現在の範囲は東西27.1キロメートル、南北21.3キロメートルの広がりの中にあり、面積は347.79平方キロメートルとなっている。
市域の範囲は、市の南部にある函館山(標高333.8メートル 三角点標高)を扇のかなめとして扇形状に南西部から北部へ伸び、東側で戸井町、尻岸内町と接し、北東部で横津山系分水嶺を境として南茅部町、鹿部村に接し、北・西側で七飯町、上磯町と境を接している。道内で最も函館と近距離にある都市は伊達市で、国道距離にして函館から約161キロメートル離れて位置している。そのため道央諸都市群のように近距離間に都市をもたず、孤立した都市となっている。更にこのような道央の中枢的機能部から離れた位置にあるため、第2次大戦後の開発政策からも取り残され、はたまた都市の再編成の中で、かつて北海道の経済的中枢機能を二分していた小樽と共にその社会的、経済的地位の低落を余儀なくされた。