柏乡一名始见于《汉书·地理志》,当时为侯国,即所谓“汉以此侯封,始有柏乡之名”(《赵州志》)。唐《元和郡县志》载:“隋开皇十六年于汉高阝城南十八里改置柏乡县,遥取古柏乡县以为名。”此说似不确,汉及隋无柏乡县,应为侯国。据《太平寰宇记》载;“遥取汉柏乡之名。”
1949年8月1日河北省人民政府成立,柏乡遂属河北省邢台专区,1958年4月28日撤销邢台专区,柏乡划归为邯郸专区,1958年12月20日撤销柏乡县并入内邱县。1960年5月3日撤销邯郸专区,柏乡县随内邱县归邯郸市辖。1961年5月23日复设邢台专区,柏乡县随内邱复属邢台专区,同时析内邱县复置隆尧县,原柏乡辖区一并划入隆尧县。1962年1月析隆尧县复置柏乡县,仍隶邢台专区(1967年12月改邢台地区)。1993年6月30日隶属邢台市。
1996年,柏乡县面积268平方千米,人口约17.3万人,辖2个镇、4个乡:柏乡镇、固城店镇、王家庄乡、西汪乡、内步乡、龙华乡。
2000年第五次人口普查,柏乡县常住总人口181104人,其中:柏乡镇45497人、固城店镇36260人、王家庄乡16997人、西汪乡29378人、龙华乡35452人、内步乡17520人。
2007年末,西汪乡撤乡建镇。调整后,全县辖3个镇、3个乡:柏乡镇、固城店镇、西汪镇、王家庄乡、龙华乡、内步乡。
2010年第六次人口普查,柏乡县常住总人口190225人,其中:柏乡镇47487人,固城店镇37626人,西汪镇31156人,王家庄乡17773人,龙华乡37738人,内步乡18445人。