FTP uses two TCP connections - a control connection on port 21 to send control information like login credentials and commands, and a data connection on port 20 to transfer files. The control connection remains open for the duration of the session while only one file can be transferred per data connection. It supports three data structures - file, record, and page. Common FTP commands include USER, PASS, LIST, and RETR. Replies include success and error codes like 200, 530, and 221.