This paper addresses a supply chain design problem based on a two-echelon single-product system. In the first echelon the plants transport the product to distribution centers. In the second echelon the distribution centers transport the product to the customers. Several transportation channels are available between nodes in each echelon, with different transportation costs and times. The decision variables are the opening of distribution centers from a discrete set, the selection of the transportation channels, and the flow between facilities. The problem is modeled as a bi-objective mixed-integer program. The cost objective aggregates the opening costs and the transportation costs. The time objective considers the longest transportation time from the plants to the customers. An implementation of the classic epsilon-constraint method was used to generate true efficient sets for small instances of the problem, and approximate efficient sets for larger instances. A metaheuristic algorithm was developed to solve the problem, as the major contribution of this work. The metaheuristic algorithm combines principles of greedy functions, Scatter Search, Path Relinking and Mathematical Programming. The large instances were solved with the metaheuristic algorithm and a comparison was made in time and quality with the epsilon-constraint based algorithm. The results were favorable to the metaheuristic algorithm for large instances of the problem.