We investigate two techniques for controlling decoherence, focusing on the crucial role played by the environmental spectrum. We show how environments with different spectra lead to very different dynamical behaviours. Our study clearly proves that such differences must be taken into account when designing decoherence control schemes. The two techniques we consider are reservoir engineering and quantum-Zeno control. We focus on a quantum harmonic oscillator initially prepared in a nonclassical state and derive analytically its non-Markovian dynamics in presence of different bosonic thermal environments. On the one hand we show how, by modifying the spectrum of the environment, it is possible to prolong or reduce the life of a Schr\"odinger cat state. On the other hand we study the effect of nonselective energy measurements on the degradation of quantumness of initial Fock states. In this latter case we see that the crossover between Zeno (QZE) and anti-Zeno (AZE) effects, discussed by Maniscalco et al. [Phys. Rev. Lett. 97, 130402 (2006)], is highly sensitive to the details of the spectrum. In particular, for certain types of spectra, even very small variations of the system frequency may cause a measurement-induced acceleration of decoherence rather than its inhibition.