A data communication system includes a data transmitting apparatus and a data receiving apparatus. The data transmitting apparatus includes a packetizing section that generates data packets, an encoding section that performs redundant encoding on the data packets in predetermined time units and generates encoded blocks, a data transmitting section that transmits each encoded block to the data receiving apparatus, a data-size acquiring section that acquires a data size of transmission data in each predetermined time unit, and a packet-size determining section that, on the basis of the acquired data size, in each predetermined time unit, determines a packet size of each data packet. The data receiving apparatus includes a data receiving section that acquires data packets of the transmission data by receiving each encoded block transmitted, and a depacketizing section that analyzes the data packets of the acquired transmission data and reconfigures the transmission data.