Miguel Lopes speelde in zijn loopbaan reeds voor vele clubs. Hij speelde in de jeugd bij Oriental Lissabon, CD Olivais e Moscavide, FC Alverca en SL Benfica. Hij speelde 24 wedstrijden voor het tweede elftal van Benfica. In 2006 trok hij naar CD Operário. Een jaar later tekende hij bij Rio Ave. In januari 2009 zette hij zijn handtekening onder een vierjarig contract bij FC Porto, dat in zou gaan per 1 juli 2009. Mede door de concurrentie van de Uruguayaan Jorge Fucile en de Roemeen Cristian Săpunaru kwam hij er amper aan spelen toe. In augustus 2010 werd hij uitgeleend aan het Spaanse Real Betis. In januari 2012 werd hij voor zes maanden uitgeleend aan SC Braga. Daar speelde hij tien wedstrijden, die hem een plaats in de EK-selectie opleverde. Na het EK keerde hij terug bij FC Porto. Op 8 januari 2013 werd hij verkocht aan Sporting Lissabon. Hij tekende een contract tot juni 2018 bij de hoofdstedelingen.
Omdat Lopes zowel als rechts- als linksachter uit de voeten kan, werd hij door Portugees bondscoach Paulo Bento geselecteerd voor het EK 2012 in Polen en Oekraïne. Hij debuteerde in het nationaal elftal op 2 juni 2012 in een oefeninterland tegen Turkije. Hij zat in de 23-koppige selectie voor het eindtoernooi, maar kwam geen enkele keer in actie.
Miguel Lopes heeft een broer, Nuno, die als rechtsachter speelt bij SC Beira-Mar. Zij speelden beide voor dezelfde jeugdteams. Enkel Nuno haalde de jeugdelftallen van Benfica niet.