Make a bullet follow a curvy path

I wish to create a simulation in which a bullet follows a predefined path (straight or curly) and was wondering on how to do it. One option I looked into was using collision avoidance; place a few objects (defining the path the bullet has to take) in the scene and using a few raycasts, make the bullet avoid them and thus stay on that path.
Is there any other way of accomplishing this?

I’m not sure on the specifics, but I believe that if you want to do a wave pattern, just curving back and forth, put the bullet inside a parent gameObject. The parent flights straight, and the bullet object simply moves back and forth inside that object – the result is the appearance of a bullet traveling in a wave pattern. I’m sure you could do fancy math to make it less wave like and more randomly curved.

Thank you for your reply! That does sound very doable. But let’s say the path is a set of points in space that the bullet has to follow. How can I create the simulation in that case?