Position information plays a pivotal role in wireless sensor network (WSN) applications and protocol/algorithm design. In recent years, range-free localization algorithms have drawn much research attention due to their low cost and applicability to large scale WSNs. However, the application of range-free localization algorithms is restricted because of their dramatic accuracy degradation in practical anisotropic WSNs, which is mainly caused by large error of distance estimation. Distance estimation in the existing range-free algorithms usually rely on a unified per hop length (PHL) metric between nodes. But PHL between different nodes might be greatly different in anisotropic WSNs, resulting in large error in distance estimation. We find that, although PHL between different nodes might be greatly different, it exhibits significant locality, i.e., nearby nodes share similar PHL to anchors that know their positions in advance. Based on the locality of PHL, a novel distance estimation approach is proposed. Theoretical analyses show that the error of distance estimation in the proposed approach is only one fourth of that in state-of-the-art patterndriven scheme (PDS). An adaptive anchor selection is devised to further improve localization accuracy by mitigating the negative effects from the anchors that are poorly distributed in geometry. By combining the locality-based distance estimation and the adaptive anchor selection, a range-free localization algorithm named Selective Multilateration (SM) is proposed. Simulation results show that SM achieves localization accuracy higher than 0.3r, where r is the communication radius of nodes. Compared with state-of-the-art solutions, SM improves distance estimation accuracy by up to 57 percent and improves localization accuracy by up to 52 percent consequently.