Multi-objective optimization methods have to find the best solution that minimizes or maximizes simultaneously two or more objective functions; these algorithms can usually find a set of solutions that fulfill such conditions trying to get the Pareto optimal. Traditional algorithms have difficulties finding the Pareto optimal since the search space is complex; for this reason, natural algorithms have found an important research niche due to its ability to approach to the Pareto Optimal set at each run. This paper presents a proposal to achieve the parallel implementation of the NSGA-II algorithm. In the proposal, the algorithms for the crossover procedure and Pareto rank assignments were designed using threads for parallel programming. The NSGA-II was coded in C#, and it was evaluated with five special test functions using different genetic operators. Experimental results show that these operators can perform fi ne for some function, but they do not always exhibit the best performance for all problems; this is depending on the problem complexity.