This article addresses the problem of scheduling in oil refineries. The problem consists of a multi-product plant scheduling, with two serial machine stages-a mixer and a set of tanks-which have resource constraints and operate on a continuous flow basis. Two models were developed: the first using mixed-integer linear programming (MILP) and the second using genetic algorithms (GA). Their main objective was to meet the whole forecast demand, observing the operating constraints of the refinery and minimizing the number of operational changes. A real-life data-set related to the production of fuel oil and asphalt in a large refinery was used. The MILP and GA models proved to be good solutions for both primary objectives, but the GA model resulted in a smaller number of operational changes. The reason for this is that GA incorporates a multi-criteria approach, which is capable of adaptively updating the weights of the objective throughout the evolutionary process.