In communications and in typical GnuRadio applications, decimation is most commonly used to reduce the sampling rate of an oversampled signal, in order to reduce the computational complexity of the system.
Consider this example: You design a stereo FM receiver in GnuRadio. The FM signal is approximately 200 KHz wide, so you sample the downconverted signal at (let's say) 512 kHz. After FM demodulation, the L+R audio signal is present between 0 and 15 kHz; to recover it, you low-pass filter the signal. This leaves you with a signal whose spectrum extends to 256 kHz, but has actual content only up to 15 kHz. It makes sense to decimate it so that its sampling rate becomes, let's say, 32 kHz. In any further processing of this signal, you just reduced the number of operations required by a factor of 512/32=16.
Sometimes you have to interpolate (increase the sampling rate). Let's say that now you're creating a stereo FM signal. You need to shift the spectrum of the L-M signal from the range 0-15 kHz to the range 23-38 kHz. If the signal is originally sampled at 32 kHz, the operation is impossible. You need to first interpolate it to a new sampling rate of at least 38*2=76 kHz.
(See https://en.wikipedia.org/wiki/FM_broadcasting#Stereo_FM if you're unfamiliar with the format of FM broadcast signals).