Answer: Option "C" is correct
Explanation: What Joachim said is correct in option A and B which makes option C the correct answer.
Rainbow is formed as a result of refraction, reflection and dispersion of light which results in spectrum of light appearing in the sky. And also wavelength is responsible for transmitting or carrying of light to the surface, it is the wavelength of light that in turns separate into different color which we see in rainbows.