The Barcelona striker, who missed four games after calling the South American Football Confederation "corrupt," scored after 14 minutes to give Argentina a deserved victory in the so-called Superclasico.
The result extended Brazil’s winless run to five games since they lifted the Copa America in July, their worst such run since 2013, reports Reuters.
Brazil beat Argentina 2-0 the last time these teams met in the Copa America semi-finals and they should have taken a ninth minute lead but Gabriel Jesus fired a penalty kick wide after he had been brought down in the box.
Argentina were also awarded a penalty five minutes later and although Brazilian keeper Alisson saved Messi's initial effort, the Barcelona striker followed up to put Argentina 1-0 ahead.
Messi missed two chances to double Argentina's lead before halftime, with defender Eder Militao and Alisson blocking the opportunities.
Brazil, who were without Paris St Germain striker Neymar, had two-thirds of the possession but rarely threatened the Argentine goal in a game that featured 41 fouls and six yellow cards.
Argentina, meanwhile, looked more sprightly, even without Sergio Aguero and Paulo Dybala, both of whom were unused substitutes.
Argentina have now won three of the five games they have played since their semi-final exit at the Copa America.