A model-predictive control (MPC) design methodology for processes with more manipulated inputs than outputs is developed. Essential features of the proposed approach are the following: the on-line optimization minimizes an objective function based on the l2 norm; an end-condition equation is utilized; model uncertainty is considered as upper and lower bounds on the pulse-response-model coefficients; hard constraints on the input and move-size variables and soft constraints on the output variables are posed. A major difference between square and nonsquare MPC is that in the former the end-condition can be used directly, while in the latter a nonlinear programming problem needs to be solved during the design phase to select values for the input move suppression coefficients. This technique is illustrated through a number of simulations and application to a real industrial process.