To really understand the discrete fourier transform properly you need to understand the mathematical concept of a group. Fortunately, you only need to understand one particular group G, namely the integers mod n. Once one thinks of the input to the Discrete Fourier Transform (DFT) as a function on G (i.e. the input to the function is an element of G and the output is a complex number), then it is possible to frame the DFT in terms of a map between functions on G to functions on the dual of G (using something called Pontryagin duality). The thing is, functions on the dual of G multiply pointwise whereas functions on G itself multiply like polynomials mod x^n - 1.
Therefore to multiply polynomials, one thinks of them as functions on G, uses the DFT to take you to functions on the dual of G, multiplies pointwise, then does an inverse transform to get you back to functions on G again. I'm skimming over lots of details and oversimplifying a bit, but what I just described is the process of using a convolution to multiply polynomials.
The really great thing is if n is a power of 2. Then you have this cool Cooley-Tukey algorithm called the Fast Fourier Transform to do the DFT (and IFFT) really fast (in time O(n log n) instead of O(n^2)). It works by recognising that computing an FFT is precisely the same thing as evaluating a polynomial at the n-th roots of unity. This can be done by repeatedly breaking the problem into halves and recognising that the same pattern of roots of unity occurs in the first half as in the second. By factoring that out, you can (recursively) save yourself half the work.
Therefore to multiply polynomials, one thinks of them as functions on G, uses the DFT to take you to functions on the dual of G, multiplies pointwise, then does an inverse transform to get you back to functions on G again. I'm skimming over lots of details and oversimplifying a bit, but what I just described is the process of using a convolution to multiply polynomials.
The really great thing is if n is a power of 2. Then you have this cool Cooley-Tukey algorithm called the Fast Fourier Transform to do the DFT (and IFFT) really fast (in time O(n log n) instead of O(n^2)). It works by recognising that computing an FFT is precisely the same thing as evaluating a polynomial at the n-th roots of unity. This can be done by repeatedly breaking the problem into halves and recognising that the same pattern of roots of unity occurs in the first half as in the second. By factoring that out, you can (recursively) save yourself half the work.
Again, oversimplified, but that's the nub of it.