This paper investigates an identical parallel machine scheduling problem with flexible maintenance and job release times and attempts to optimize two objectives: the minimization of the makespan and total tardiness simultaneously. A mixed-integer programming (MIP) model for solving small-scale instances is presented first, and then a modified NSGA-Ⅱ (M-NSGA-Ⅱ) algorithm is constructed for solving medium- and large-scale instances by incorporating several strategies. These strategies include: (ⅰ) the proposal of a decoding method based on dynamic programming, (ⅱ) the design of dynamic probability crossover and mutation operators, and (ⅲ) the presentation of neighborhood search method. The parameters of the proposed algorithm are optimized by the Taguchi method. Three scales of problems, including 52 instances, are generated to compare the performance of different optimization methods. The computational results demonstrate that the M-NSGA-Ⅱ algorithm obviously outperforms the original NSGA-II algorithm when solving medium- and large-scale instances, although the time taken to solve the instances is slightly longer.