Il est échangé aux Red Sox de Boston le , puis aux Indians de Cleveland le avant de devenir agent libre à la fin de la saison 2006. Il signe le pour deux saisons chez les Rangers du Texas. La polyvalence de Vázquez dans le champ intérieur est l'un des atouts de son jeu. En 2008, il alterne ainsi entre les postes de troisième base (70 matches), arrêt-court (26 matches), deuxième base (11 matches) et première base (1 match).
Il rejoint les Pirates de Pittsburgh le avec lesquels s'engage pour deux saisons[1]. Il commence la saison 2009 comme titulaire au troisième but.