The win stretches PSG's lead at the top of the league to five points.
However, the night was marred by the injury of star forward Kylian Mbappe, who had to be substituted after just 20 minutes with a knee injury.
The extent of the injury is yet to be determined, but head coach Christophe Galtier is optimistic and believes that it's just a knock on the knee.
The match was a slow start for PSG, with a lacklustre first half. However, after the break, the team came alive, with Fabian Ruiz, Messi, and Warren Zaire-Emery all finding the back of the net.
Ruiz started the scoring with a volley from a headed pass by Hugo Ekitike in the 55th minute. Messi then added to the score 17 minutes later with a low shot from close range, after a laser-sharp pass from Ruiz.
Despite a goal from Arnaud Nordin for Montpellier, 16-year-old Zaire-Emery put the result beyond doubt at the end of a counter-attack, securing the win for PSG.
Meanwhile, Olympique de Marseille secured a 2-0 victory against Nantes, leapfrogging RC Lens, who suffered their first defeat at home against Nice, 1-0.
The night was a disappointing one for Mbappe, who missed a penalty early in the match and had to be substituted due to injury. This is a major blow for PSG, who face Bayern Munich in the Champions League Round of 16 in two weeks. The extent of the injury will be determined in the coming days, and the team will be hoping that Mbappe will be fit to play.
In other matches, England Under-21 striker Folarin Balogun scored a hat-trick, helping Stade de Reims to beat Lorient 4-2 and move to the top of the scorers' charts. Bottom club Angers suffered a 2-1 defeat at home against AC Ajaccio, setting a new record for the most consecutive defeats in the top flight.