There are several good reasons for using wavelets over Fourier. To name a few:
- The Fourier basis is nonlocal, meaning that signal features such as transients, discontinuities, and edges (in the case of images) show up in all the Fourier coefficients. This is because the functions $e^{ikt}$ are nonzero for all $t$. Consequentially, this means that with Fourier we can know that there is such a feature but we don't know where it is in the signal. Wavelets, on the other hand, can provide localized information in the sense that we can identify both the frequencies and locations of signal features. If you're working with images, discontinuous signals, or signals with multiple regions/scales of behavior, this is perhaps the best reason to use wavelets.
- Compression and sparsity. Briefly, wavelets can represent the key features of a signal very efficiently. This is the reason wavelet expansions have become extremely popular in data compression and compressed sensing applications. I am biased (I study compressed sensing), but I would say the most important setting for wavelets is in signal recovery i.e. reconstructing a signal from measurements of it.
There are several things that become more difficult with wavelets, however:
- Convolution products are not necessarily simple in the wavelet domain. The reason convolutions are simple in the Fourier basis is that the functions $e^{ikt}$ are the eigenfunctions for translation invariant operators; wavelet basis function $\psi_{j,k}$ do not enjoy this property. That being said, there are operators called Calderon-Zygmund operators which do (nearly) diagonalize in Wavelet bases.
- Much of the language of signal processing is still adapting to the wavelet framework: things like bandwidth, resolution, frequency and so forth are based on a Fourier interpretation of a signal. Wavelet bases, to a certain extent, can supersede some of these ideas and it can be difficult to draw the necessary connections to classical signal processing. For instance, sparse functions are the appropriate version of 'band-limited' functions in a wavelet setting.
- The mathematics involved is much more difficult than with Fourier (if you really want to understand what you're using and not just swing a hammer).
I would recommend picking up a book on Wavelets and looking at the examples - Mallat's A Wavelet Tour of Signal Processing is not a bad place to start.