TCP is a transport layer protocol that establishes a connection between sender and receiver before transmitting data packets in a reliable, ordered, and error-checked manner. It divides application layer data into packets, numbers them, and ensures they are reassembled correctly at the destination. TCP provides full-duplex communication and maintains a virtual connection via three-way handshake and acknowledgment of received packets.