IP: stands for Internet Protocol. This is the base of protocols such as TCP, UDP, ICMP and others.
TCP: Transmission Control Protocol.
Provides a reliable way of exchanging packets between hosts. TCP allows applications to build a stream of data between hosts, the protocol implements a way to make sure that all packets are received in the order they have been sent and one packet is delivered exactly once.
UDP: Used Datagram Protocol.
Provides a non reliable way of exchanging packets between hosts. UDP packets may be delivered to the destination host more than once or not at all (some packets might get lost). The order that packets are delivered is not defined.
UDP/IPv4 Broadcast sample
UDP/IPv4 Multicast sample
UDP/IPv6 Unicast sample
On the network, you can observe different type of IP traffic that can be divided in 3 categories:
Unicast is a one to one communication, both TCP and UDP can be used to build such kind of connection.Multicast and Broadcast is a one to many communication, only UDP can be used to build such kind of connection.
IPv4 addresses are 32 bit, while IPv6 addresses are 128 bit. Since regional IP providers are running out of IPs, in few years time we will switch to IPv6. Most OS currently on the market already have support for IPv6, so people already started modifying network apps to support IPv6.