FTP is a protocol that allows files to be transferred between computers over the Internet. It is one of the oldest Internet applications, predating TCP/IP. FTP supports transferring different file types and connecting heterogeneous computers. It uses commands like GET and PUT to retrieve and send files. FTP defines two transfer modes - textual for ASCII text and binary for other file types like images. FTP uses a client-server model where the client connects to the FTP server, which authorizes access and sends the requested files over TCP.