A new approach is proposed here for the level control of steam generators through a weighted one-step- ahead stochastic self-tuning algorithm. The complicated steam generator model is represented by four parameters; water level, feedwater, steam flow and stochastic disturbances. A set of time series difference equations are obtained by combining these parameters and the measurements of water level, feedwater flow, and steam flow. These parameters are determined by a recursive least squares algorithm which results from minimizing the sum of the squared error between output (steam generator water level) and one-step-ahead optimal prediction of output. This algorithm contains a forgetting factor which can be used to account for an exponential decay of past data in tracking a slow drift in the parameters. The recursive least squares with forgetting factor, $0.950 < \lambda < 0.995$, shows good performance when rapid changes occur in process. Control input is calculated by using the time series difference equation so that the one-step-ahead optimal prediction of output equals to desired output. However, excessive control effort may be called for to bring output to desired output. Therefore, the present weighted one-step-ahead controller is designed to achieve a compromise between the extent of bringing output to desired output and the amount of control effort. An additional integral action controller is adopted optionally to compensate for the steady-state offset which comes from non-zero mean disturbances or control input weighting. To measure water level, feedwater flow, and steam flow accurately, the conventional D/P cells are replaced by capacitance-type transducers. The transducers give excellent linearity, even in the very low $\triangle$P range. The experimental loop, which is a mock-up of the secondary loop of the nuclear power plant, is used to prove effectiveness of the present adaptive control algorithm. It can be concluded from experimental results that ...