木古内駅は北海道上磯郡木古内町にある北海道旅客鉄道(JR北海道)北海道新幹線、道南いさりび鉄道道南いさりび鉄道線の駅で、道内最南端の駅でもある。
1930年10月25日開業*1。
1930年10月25日、官設鉄道上磯線の上磯駅−木古内駅間の開通に伴い、一般駅として開業。
1935年12月10日、上磯線の木古内駅−湯ノ岱駅間が開業。
1936年11月10日、上磯線の湯ノ岱駅−江差駅間の延伸開業に併せ、上磯線が江差線に改称。
1937年10月12日、国有鉄道福山線の木古内駅−渡島知内駅間が開業。
1949年6月1日、日本国有鉄道(国鉄)に移管。
1953年11月8日、福山線の渡島大沢駅−松前駅間の延伸開業に併せ、福山線を松前線と改称。
1982年11月15日、貨物取扱廃止。
1985年3月14日、荷物取扱廃止。
1987年4月1日、国鉄分割民営化に伴い、北海道旅客鉄道(JR北海道)に承継。
1988年2月1日、松前線木古内駅−松前駅間が廃止。
1988年3月13日、海峡線中小国駅−木古内駅間開業。
2014年5月12日、江差線の木古内駅−江差駅間が廃止。
2016年3月26日、北海道新幹線新青森駅−新函館北斗駅間開業に伴い、北海道新幹線の停車駅となる。江差線五稜郭駅−木古内駅間を道南いさりび鉄道に移管、駅番号を設定。