Answer:
The difference between TCP connections and UDP connections are :
TCP are connection oriented while UDP is connectionless.
The speed for TCP is slower than UDP.
TCP connection is reliable than UDP connection.
In TCP their guarantee that the data is transferred but in UDP their is not guarantee that the data transferred .
The header size is 20 bytes In TCP but in UDP header size is 8bytes.
In TCP connection their is an Acknowledgement segments while in UDP their is their is no Acknowledgement segments.
In TCP their is 3 way handshaking takeplacebut in UDP their is no handshaking.
The DNS run over UDP because
if DNS using TCP the load is increases on server thats why DNS uses UDP DNS requests are small so they run on UDP segments.As UDP is not reliable but DNS run over UDP so reliability also increases in UDP