This paper develops a discrete-time two-factor model of interest rates with analytical solutions for bonds and many interest rate derivatives when the volatility of the short rate follows a GARCH process that can be correlated with the level of the short rate itself. Besides bond and bond futures, the model yields analytical solutions for prices of European options on discount bonds (and futures) as well as other interest rate derivatives such as caps, floors, average rate options, yield curve options, etc. The advantage of our discrete-time model over continuous-time stochastic volatility models is that volatility is an observable function of the history of the spot rate and is easily (and exactly) filtered from the discrete observations of a chosen short rate/bond prices. Another advantage of our discrete-time model is that for derivatives like average rate options, the average rate can be exactly computed because, in practice, the payoff at maturity is based on the average of rates that can be observed only at discrete time intervals. ; Calibrating our two-factor model to the treasury yield curve (eight different maturities) for a few randomly chosen intervals in the period 1990–96, we find that the two-factor version does not improve (statistically and economically) upon the nested one-factor model (which is a discrete-time version of the Vasicek 1977 model) in terms of pricing the cross section of spot bonds. This occurs although the one-factor model is rejected in favor of the two-factor model in explaining the time-series properties of the short rate. However, the implied volatilities from the Black model (a one-factor model) for options on discount bonds exhibit a smirk if option prices are generated by our model using the parameter estimates obtained as above. Thus, our results indicate that the effects of random volatility of the short rate are manifested mostly in bond option prices rather than in bond prices.