隋开皇十六年（596年）置县，因县治居汾孔河二河相交处，故名。唐天授二年（691年）县治由今太原古交移置今址。明代隶属太原府。民国三十年（1941年）十一月划为交城、交西两县，民国三十三年（1944年）复并为交城县。1949年9月隶属榆次专区，10月改属汾阳专区；1951年复属榆次专区。1958年属晋中专区，同年9月，该县与文水、汾阳并为汾阳县1959年9月复为交城县1971年划属吕梁地区恢复交城县建制至今。
地理.西部为吕梁山脉，东部为太原盆地。