Soares was de zoon van een ex-priester, die later pedagoog en republikein was geworden. Soares studeerde aan het Colégio Moderno en daarna geschiedenis, filosofie aan de Universiteit van Lissabon.
Tijdens zijn studie werd Soares lid van de Communistische Partij van Portugal (PCP). Hij werd leider van de communistische jeugdbeweging. In deze functie organiseerde hij in 1945 een demonstratie om het einde van de Tweede Wereldoorlog te vieren. In 1946 volgde zijn arrestatie door de PIDE, de geheime politie van premier Salazar, voor zijn aandeel in een demonstratie van de Movimento de Unidade Democrática (Beweging voor Democratische Eenheid). In 1949 werd hij nog tweemaal gearresteerd. In datzelfde jaar (februari) trouwt hij met María de Jesus Barroso Soares (1925-2015) bij wie hij twee kinderen kreeg, een dochter en een zoon. De zoon, João Soares, volgde later zijn vader in diens voetsporen door ook politicus te worden.
Tussen zijn arrestaties in, werkte Soares als docent geschiedenis en filosofie, maar vond dat hij te weinig met zijn beroep bezig kon zijn. Hij ging daarom naar Parijs om rechten te studeren. Eenmaal terug in Portugal vestigde hij zich als advocaat in Lissabon. In 1951 brak Soares met het communisme en werd een democratisch socialist.
In 1958 ondersteunde Soares de kandidatuur van generaal Humberto Delgado voor de presidentsverkiezingen. Delgado was aanvankelijk aanhanger van premier Salazar, maar brak later met hem en diens politiek. Delgado nam het op tegen generaal Américo Tomás, de kandidaat die door Salazar werd gesteund. Tomás won de verkiezingen en Delgado ging in ballingschap en werd voorzitter van een revolutionair comité dat zich fel tegen Salazar en diens Estado Novo keerde.
Soares werd in april 1968 door de PIDE gearresteerd en verbannen naar het eiland Sao Tomé. Zijn vrouw en kinderen volgden hem in zijn ballingschap. Hij kon echter reeds in november1968, nadat Salazar als premier was vervangen door Marcello Caetano, naar Portugal terugkeren. Premier Caetano stond de vorming van oppositiepartijen niet toe, wel kort voor de parlementsverkiezingen opgerichte, geregistreerde politieke clubs, die direct na de verkiezingen weer moesten worden ontbonden. In 1969 vormden sociaaldemocraten, waaronder Soares, de Commissião Eleitoral de Unidade Democrática (CEUD). De sociaaldemocraten van de CEUD waren zeer gematigd. Een andere oppositiegroep was Commissião Eleitoral Democrática (CED) van progressieve Katholieken. De CED was iets radicaler. Zowel CEUD en CED konden redelijk vrij een verkiezingscampagne voeren en men verwachtte dat beide groeperingen toch wel zetels zouden veroveren. Desondanks veroverde de União Nacional (Nationale Unie) bij de verkiezingen van 26 oktober alle 130 zetels van het Portugese parlement. De verkiezingen waren duidelijk vervalst. Direct na de verkiezingen werden zowel de CEUD als CED ontbonden.
In augustus 1970 werd Soares uit Portugal verbannen. Hij vestigde zich eerst in Rome en daarna in Frankrijk. Hij was gastdocent aan de universiteiten van Vincennes, Parijs en Rennes. In 1973 werd de ANP omgezet in de Socialistische Partij en werd Soares tot secretaris-generaal van de partij gekozen. Bij de verkiezingen van 1973 hadden diverse oppositiegroepen zich verenigd in de Commissião Democrática Eleitoral (CDE). Weer gingen alle zetels naar de União Nacional van Caetano. Soares zelf werd overigens niet toegelaten in Portugal om daar oppositie te voeren.
Democratie
Op 25 april1974 brak de Anjerrevolutie in Portugal uit. President Tomás en premier Caetano vertrokken naar Brazilië en de nieuwe president, António de Spínola, nodigde de in ballingschap levende oppositieleiders uit om naar Portugal terug te keren. Op 28 april 1974 keerden Soares, Manuel Tito de Morais e.a. socialisten in Portugal terug. Soares werd door de Beweging van de Strijdkrachten (MFA) tot minister van Overzeese Gebieden benoemd en zijn voornaamste taak werd onderhandelen met de vrijheidsstrijders in de Portugese koloniën om zo snel mogelijk tot onafhankelijkheid te komen voor de koloniën. Soares ontmoette onder andere Samora Machel, de leider van de MozambikaanseFRELIMO.
Later ontstonden er ernstige problemen in de regering, nadat de communisten van de Communistische Partij van Portugal probeerden steeds meer controle uit te oefenen binnen de regering, de junta en de MFA. Ook ontstonden er grote spanningen tussen de PS en de PCP. Vasco Gonçalves, de minister-president moest later het veld ruimen nadat hij was beschuldigd van communistische sympathieën.
Premier
In april 1976 werden de eerste democratische verkiezingen in Portugal gehouden. De PS won de meeste zetels en Soares werd minister-president van een socialistische/christendemocratische regering (PS/CDS). In 1978 viel de regering.
Van 1983 tot 1985 was Soares opnieuw premier. Tijdens deze periode zorgde hij ervoor dat de onderhandelingen tussen Portugal en de Europese Unie leidden tot Portugals toetreding in 1986.
President
In 1986 was Soares presidentskandidaat voor de PS. Bij de eerste ronde behaalde hij 25,4% van de stemmen. Zijn grootste tegenstander, Diogo Freitas do Amaral, behaalde 46% van de stemmen. Bij de tweede ronde behaalde Soares 51% van de stemmen en Freitas do Amaral 49% van de stemmen. In 1991 werd Soares met een ruime meerderheid van 70% van de stemmen herkozen. Het grootste deel van zijn presidentschap had hij de centrumrechtse Aníbal Cavaco Silva als premier naast zich. Als president trok Soares door het land en creëerde zo een heel open presidentschap.
Na zijn presidentschap
Soares ging in 1996 met pensioen, maar in 1998 werd hij hoofd van de Onafhankelijke Wereldcommissie van de Oceanen. Van 1999 tot 2004 was hij lid van het Europees Parlement.
Soares werd voorzitter van de Fundação Mário Soares en in januari 2005 maakte hij bekend mee te zullen doen aan de presidentsverkiezingen van 22 januari 2006. Hij ontving 14% van de stemmen en werd na Aníbal Cavaco Silva en Manuel Alegre derde.
In december 2016 werd hij in het ziekenhuis opgenomen. Soares overleed op 7 januari 2017 op 92-jarige leeftijd.
Onderscheiding
In 1998 werd Soares samen met de Egyptenaar Milad Hanna onderscheiden met de Internationale Simón Bolívar-prijs van de UNESCO, een prijs die het doel heeft activiteiten van buitengewone verdienste te belonen die in de geest staan van de Latijns-Amerikaanse vrijheidsstrijder Simón Bolívar.