Город находится в южной части Швейцарского плато, на реке Ааре. Исторически город был построен на высоком холме в излучине Ааре, образующей естественную защиту города.
Берн расположен примерно в 542м над уровнем моря. Здесь властвует умеренный континентальный климат. За год выпадает около 800мм осадков. Зимой температура держится около 0° С, летом достигает +20-25° С.