苗族主要分布在贵州、湖南、云南、四川、广西、湖北、海南等省、区。
在黔东南和湘鄂川黔的交界地带(以湘西为主),有较大的聚居区。在广西大苗山、滇黔桂和川黔滇交界地带和海南也有小聚居区。其他地方的苗族则与其他各民族杂居。
苗族村寨少则几户、十几户,多则百户、干户。居住环境各地差别较大,多为山坡地或较平坦的山脚,也有高寒山区。苗族使用苗语,属汉藏语系苗瑶语族苗语支。由于长达几千年的迁徙,住地分散,因而苗语逐步分成三大方言,即湘西(东部)方言、黔东(中部)方言和川黔滇(西部)方言。此外,川黔滇方言内部又分7个次方言。有些杂居地区的苗族,讲汉语、侗语、壮语等语言。