In this paper, we propose an enhanced Monte Carlo localization (EMCL) algorithm for mobile robots, which deals with the premature convergence problem in global localization as well as the estimation error existing in pose tracking. By incorporating a mechanism for preventing premature convergence (MPPC), which uses a “reference relative vector” to modify the weight of each sample, exploration of a highly symmetrical environment can be improved. As a consequence, the proposed method has the ability to converge particles toward the global optimum, resulting in successful global localization. Furthermore, by applying the unscented Kalman Filter (UKF) to the prediction state and the previous state of particles in Monte Carlo Localization (MCL), an EMCL can be established for pose tracking, where the prediction state is modified by the Kalman gain derived from the modified prior error covariance. Hence, a better approximation that reduces the discrepancy between the state of the robot and the estimation can be obtained. Simulations and practical experiments confirmed that the proposed approach can improve the localization performance in both global localization and pose tracking.