Outsourcing plays an important role in the success of organizations. One of the risks associated with outsourcing is inappropriate contractor selection which significantly influences the implementation of projects in terms of time, quality, and cost. In this study, we applied multi-criteria decision-making techniques in order to determine the best contractor using criteria such as reputation, offered price, and technical capacity. This study is primarily aimed at identifying important criteria of contractor selection, determining the significance of the criteria, and designing a framework for selection of the most appropriate contractor. Important criteria for selecting contractors were extracted from the literature and experts' views were collected using questionnaire. Accordingly, six criteria were selected and their weights were determined by the application of goal programming. Finally, contractors were ranked and the best contractor was selected using fuzzy ELECTRE technique with trapezoidal fuzzy numbers.