北京地势西北高,东南低。西部、北部和东北部三面环山,东南部是一片缓缓向渤海倾斜的平原。山地和平原分别占总面积的62%和38%。西部北部为山地。西山属太行山系,与市区接近的是太行山余脉,由几条东北一西南向山岭组成,人们称作西山。这里丛林茂密、山涛云海、庙宇棋布、洞壑深邃,造就出富有江南情调的景色,故古人有“十里青山行画里,双飞白鸟似江南”之赞誉。北部的军都山属燕山山脉,层峦叠翠,断袭作用强烈,形成延庆盆地和居庸关、古北口等关隘,自西向东直抵渤海之滨的山海关。宋苏辙说:“燕山如长蛇,首衔西山麓,尾挂东海岸”。北京境内的军都山、八达岭、凤驼梁等山峰,均属燕山山脉,一般海拔都在千米以上。一般认为,两条山脉在南口镇北面的关沟交会。在地质构造上,这里是一个大断层,两侧的地壳运动不同,再加上山间小河流水冲刷、切割,逐渐形成关沟,成了两山的天然分界线。南部是由永定河和潮白河冲积而成的“京湾平原”,海拔在50米以内。
境内主要山峰有:东灵山海拔2303米,为北京第高峰,位于门头沟区与河北涿鹿县交界处;海坨山海拔2241米,为北京第二高峰,位于延庆西北边缘与河北赤城县交界处;白草畔海拔2035米,为北京第三高峰,位于房山区与门头沟区交界处。
太行山和燕山汇集的雨水,顺着西北高东南低的地势,从山区流入平原注入渤海,形成北京地区的河流水系。境内河流主要是西部的永定河和拒马河,东部的潮白河、北运河。永定河发源于山西高原,经山西、内蒙古、河北入官厅水库,出水库入北京市境内,从天津注入渤海,全长650千米,北京境内流长174千米。拒马河发源于河北省涞源县,是大清河上游,流经北京市房山区,形成了著名的“十渡风景区”,于河北涿州附近汇入大清河,最后入天津海河注入渤海。潮白河发源于河北省北部,是流经本市最长的河流,其上修建的密云水库,是北京生活用水的主要水源地。较大的水库还有怀柔水库、白河堡水库和金海湖等。
北京的气候为典型的暖温带半湿润大陆性季风气候,四季分明,夏季炎热多雨,冬季寒冷干燥,春、秋短促。年平均气温12.3℃,1月最冷,平均气温-3.7℃,极端最低气温-27.4℃。7月最热,平均气温26.2℃,极端最高42℃以上。全年无霜期186天,西部山较短。年降雨量571.9毫米。为华北地区降雨最多地区之一,山前迎风坡可以达到900毫米以上。降水季节分配很不均匀,全年降水的75%集中在夏季,7、8月常有暴雨。