I know very little about RTP. But I believe it's not alongside. You can't chose. It is RTP inside UDP (inside IP).
When developing a new application-protocol, you have to make a choice. Do I create a totally new protocol, with a new IP-protocol number assigned ? Or do I encapsulate my new protocol inside TCP or UDP ? The latter is usually the best choice. Because for a totally new IP-protocol, you need to request a new protocol number. And those are not given easily (there can be only 255 of them, remember).
So people pick UDP or TCP, according to their needs. For RTP UDP makes more sense.
See the wiki for explanation why UDP is better for RTP.
https://en.wikipedia.org/wiki/Real-time_Transport_Protocol#Overview
The basics: RTP requires timeliness over reliability.
UDP also has the benefit that routers can do load-balancing and better QoS based on the UDP port-numbers. If RTP had been a totally new protocol, existing routers would not be able to do distinquish different flows, and not do load-balancing and QoS properly.