Batch to batch temperature control of a semi-batch chemical reactor with heating/cooling system was discussed in this study. Without extensive modeling investigations, a two-dimensional (2D) general predictive iterative learning control (2D-MGPILC) strategy based on the multi-model with time-varying weights was introduced for optimizing the tracking performance of desired temperature profile. This strategy was modeled based on an iterative learning control (ILC) algorithm for a 2D system and designed in the generalized predictive control (GPC) framework. Firstly, a multi-model structure with time-varying weights was developed to describe the complex operation of a general semi-batch reactor. Secondly, the 2D-MGPILC algorithm was proposed to optimize simultaneously the dynamic performance along the time and batch axes. Finally, simulation for the controller design of a semi-batch reactor with multiple reactions was involved to demonstrate that the satisfactory performance could be achieved despite of the repetitive or non-repetitive disturbances.