Rainbows are curved because the raindrops that reflect the light are curved themselves. The arc of color you see is just part of the rainbow. This is because a rainbow is really a circle.
The bottom half, which is hidden from view, lies below the horizon. How much of the circle you see depends on where the sun is in the sky. When the sun is high, most of the bow is below the horizon.
Therefore, you can see only the top of the rainbow. When the sun is lower, more of the circle is visible. Under special conditions, people flying in planes might see the rainbow circle.
The reason why the rainbows are curved is that all the angles in the water drop have to be just right for the drop to send some sunlight to you, standing on the ground.
So, with the sun behind you, only those water droplets that have the same angle formed by you, the drop, and the sun will contribute to the rainbow. Other droplets send their light somewhere else, and if you move to a different place, new droplets are needed to make the rainbow you see in the new place.
The rainbow is curved because the set of all the raindrops that have the right angle between you, the drop, and the sun lie on a cone pointing at the sun with you at one tip.
The rainbow may look semicircular if the sun is setting or rising (a good time to see a rainbow because the sunlightat that time can get under rain clouds because it is traveling horizontally). If the sun is higher in the sky, the earth gets in the way and you may see less than a semicircular rainbow.
Content for this question contributed by Daniel Corbett, resident of Oswego, New York, USA