The TCP/IP model has different layers, each providing different services.
Layers near the top are logically closer to the user application, while those near the bottom are logically closer to the physical transmission of the data.
DHCP is a protocol included in the Application layer (the topmost layer), while UDP is a protocol included in the Transport layer.
Application layer protocols uses the services provided by the lower layers (in this case UDP, transport layer) to transmit their data.
Have a look at the following links, which may help you understand this.
Another way of saying this: DHCP is a service. UDP is the protocol carrying this service.
UDP is defined in <a href=”http://www.faqs.org/rfcs/rfc768.html”>RFC 768</a>. UDP offers a limited amount of service on top of IP and provides a procedure for application programs to send messages to other programs with a minimum of protocol mechanism. The protocol is transaction oriented, and delivery and duplicate protection are not guaranteed. UDP provides two services not provided by the IP layer. It provides port numbers to help distinguish different user requests and, optionally, a checksum capability to verify that the data arrived intact.
TCP is a protocol a top of IP to send data over the Internet. TCP is a connection-oriented protocol, which means that a connection is established and maintained until such time as the message or messages to be exchanged by the application programs at each end have been exchanged. TCP is responsible for ensuring that a message is divided into the packets that IP manages and for reassembling the packets back into the complete message at the other end. The Transmission Control Protocol is defined in <a href=”http://www.faqs.org/rfcs/rfc793.html”>RFC 793</a>.