A method is described here for designing a self-shielded MR magnet. This method determines optimal shielding while maintaining a homogeneous imaging volume. This technique uses the finite element method in the design iteration loop to solve the magnetic field problem which includes non-linear, saturable iron. From the magnetic field solution, the iron magnetization and its contribution to the bore field is determined. The positions and sizes of the current carrying coils are then optimized to obtain the best possible homogeneity. The design iterations are continued until the solutions converge. The iron shield design may also be modified at any iteration if further optimization of the iron shield is required. This integrated coils/shield optimization method has been successfully used to design several magnets.