Machine-part cell formation (MPCF) is the best-known problem in designing cellular manufacturing systems. MPCF can be considered as a block diagonalization problem in which rows and columns of the machine-part incidence matrix are rearranged in a way that a block diagonal matrix is achieved. A genetic algorithm (GA) with two parallel populations and a novel heuristic crossover is developed to solve the MPCF problem. Having two parallel populations makes the algorithm to be more effective in exploring solution space. Moreover, the proposed crossover considers relationships between machines/parts in such a way that the characteristics of parent chromosomes are transmitted to the offsprings, more accurately and acceptably. Computational experiments on a number of test problems taken from the literature demonstrate the efficiency and robustness of the proposed GA in comparison with the best-known methods.