This paper presents a multi-objective greedy randomized adaptive search procedure (GRASP)-based heuristic for solving the permutation flowshop scheduling problem in order to minimize two and three objectives simultaneously: (1) makespan and maximum tardiness; (2) makespan, maximum tardiness, and total flowtime. GRASP is a competitive metaheuristic for solving combinatorial optimization problems. We have customized the basic concepts of GRASP algorithm to solve a multi-objective problem and a new algorithm named multi-objective GRASP algorithm is proposed. In order to find a variety of non-dominated solutions, the heuristic blends two typical approaches used in multi-objective optimization: scalarizing functions and Pareto dominance. For instances involving two machines, the heuristic is compared with a bi-objective branch-and-bound algorithm proposed in the literature. For instances involving up to 80 jobs and 20 machines, the non-dominated solutions obtained by the heuristic are compared with solutions obtained by multi-objective genetic algorithms from the literature. Computational results indicate that GRASP is a promising approach for multi-objective optimization.