A host adapter is required for a network card, but the host adapter controls many different port. It connects network AND storage devices.
"In computer hardware, a host controller, host adapter, or host bus adapter (HBA) connects a host system (the computer) to other network and storage devices. The terms are primarily used to refer to devices for connecting SCSI, Fibre Channel and eSATA devices, but devices for connecting to IDE, Ethernet, FireWire, USB and other systems may also be called host adapters. Recently, the advent of iSCSI and Fibre Channel over Ethernet has brought about Ethernet HBAs, which are different from Ethernet NICs in that they include TCP Offload Engines. There are also converged HBAs that support both Ethernet and Fibre Channel called Converged Network Adapters (CNAs)." (Wikipedia)
As you can see, a network card is what you said, but the host adapter, controls things like ethernet, firewire, iSCI, SATA, and other kinds of storage devices. You can think of it as the device that controls external ports and network devices. The network card (Or network adapter), simply allows you to connect to ethernet.
Other devices are needed here as well, including the Host Controller Interface:
"A host controller interface (HCI) is a register-level interface that enables a host controller for USB or FireWire hardware to communicate with a host controller driver in software. The driver software is typically provided with an operating system of a personal computer, but may also be implemented by application-specific devices such as a microcontroller."
The HCI requires a Host Controller Driver, or HCD. This is because the software side of things require it.
The latter is a specialization of the former. http://dictionary.com
– Ярослав Рахматуллин – 2012-11-17T23:31:49.660Why is this question getting marked down? Seems like a fine question to me. +1 – Josiah – 2012-11-18T14:26:03.337