Using a recently developed Green's function formalism, we have calculated the spin-wave spectra and dispersions in Ni and Fe. For Ni(100), the dispersion exhibits two branches as observed experimentally. The calculated higher optical branch is found to be too high in energy when the standard local density approximation band-structure is used but a very good agreement with the measured dispersion is obtained when the exchange splitting is reduced, to correspond to the experimental value of the exchange splitting. We also found a double branch along Ni(111) which is not observed experimentally. For Fe, the calculated dispersion surprisingly exposes a gap midway along Γ-N in disagreement with experimental data. However, an analysis of the temperature-dependent magnetization has predicted a similar gap at the same wave vector, supporting the present calculations.