柳林县历史悠久,县境薛村镇高红村出土的仰韶文化遗址,表明早在新石器时代,就有人类在此繁衍生息。
柳林县春秋时为晋国领地,战国属赵之边邑离石。《史记·赵世家》载:“武灵王二十三年秦拔我蔺”。赵国之蔺邑在今孟门镇。秦时属太原郡。
汉武帝元朔三年(前126年)封其代共王子熹为蔺侯(古治在今之孟门镇)、忠为隰城侯(治所遗址在今之穆村镇与杨家坪之间),绾为离石侯。时今县境域分属离石、蔺、隰城等侯国。元朔四年(前125年)置西河郡,各侯国皆属之。东汉建安十八年(213年)废西河郡,其地并入太原郡。
三国魏黄初二年(221年)复置西河郡,西晋时西河郡改为西河国,今县境域分属西河国辖下的离石、隰城、中阳三县。
北朝时期,北齐置西汾州,北周大象元年(579年)西汾州下设定胡郡,兼置定胡县,郡县治所皆在今孟门镇,柳林县今之境域大部分属之。后西汾州改称石州。
隋大业元年(605年),石州改为离石郡。
唐武德元年(618年)复称石州。武德三年(620年)置西定州,治所在今之孟门镇。贞观二年(628年)废西定州,改定胡县为孟门县,县属石州。贞观七年(633年)废孟门县,置孟门镇。贞观八年(634年)废镇,复置定胡县。
北宋时期,柳林县今境域先属石州治下的离石、定胡等县,后期部分地区隶属晋宁军。
金时县境大部属石州治下的孟门县,县治仍在今之孟门镇。
元朝初年,孟门、方山二县并入离石,今县境分属离石、宁乡二县。
明初离石县并入石州,隆庆元年(1567年)石州改称永宁州,今县境属之。明代后期,今县境属山西承宣布政司太原府治下之永宁州。
清朝时期,今县境分属汾州府治下的永宁州、宁乡县。
民国元年(1912年),实行省道县建置,今县境属山西省冀宁道辖下的永宁、宁乡二县。民国三年(1914年),永宁改称离石,宁乡改称中阳,今县境隶属未变。民国二十六年(1937年),山西省划为七个行政区,离石、中阳属第四行政区。民国二十八年(1939年),全省下设四个行政公署,离石、中阳改属第二行政公署,今县境仍属离石、中阳两县。民国二十九年(1940年)1月,离石县抗日民主政府在蛤蟆塌(今孟门镇石安村)成立,属晋西北抗日民主政权之山西省第二游击区行政公署四专区;阎锡山政权之离石县政府则移驻冀家峪(即今贺家坡乡冀家峪村)。同年4月,中共代表王若飞、肖劲光与阎锡山达成以太(原)军(渡)公路为界南北分治的协议,今县境北部遂属离石县抗日民主政府管辖,县境南部遂属阎锡山政权之山西省第四行政区。民国三十年(1941年)8月,第二游击区行署改名为晋西北行政公署;民国三十二年(1943年)11月改名为晋绥边区行政公署,离石、中阳属行署辖下的三分区。民国三十四年(1945年)8月,日本侵略者投降,柳林、离石相继解放。1946年中阳县解放,今县境仍分属晋绥边区四专区辖下的离石、中阳两县。民国三十七年(1948年),离石、中阳改属晋绥三专区。