This study considers order acceptance and scheduling problems in unrelated parallel machines with several practical constraints, including order release times, sequence-dependent setup times, machines’ unequal ready times, and preventive maintenance. In a make-to-order production environment, issues with order acceptance and scheduling are mainly caused by the limited production capacity of a factory, which makes it impossible to accept all orders. Consequently, some orders must be rejected in order to maximize profits and the accepted orders must be completed by the due date or no later than the deadline. An iterated population-based metaheuristic is proposed to solve the problems. The algorithm begins with an efficient initial solution generator to generate an initial solution, and then uses the destruction and construction procedure to generate a population with multiple solutions. Then, a solution is selected from the population, and a variable neighborhood descent search algorithm with several new reduced-size neighborhood structures is applied to improve the selected solution. Following the completion of the local search, a method for updating the members of the population was devised to enhance its diversity. Finally, the metaheuristic allows the populations to evolve for several generations until the termination condition is satisfied. To evaluate the performance of the proposed metaheuristic, a heuristic rule and an iterated local search algorithm are examined and compared. The computational experimental results indicate that the presented metaheuristic outperforms the other heuristics.