what is the difference between a host adapter and network card? I know that a netword card is the electrical circuits in the computer where you plug your ethernet cable into in order to gain internet access. But how is the host adapter different from this?
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.
A Host Adapter "connects a host system (the computer) to other network and storage devices"
An Ethernet Host Adapter is a host adapter for Ethernet networking and is also called by a variety of other names such as: Ethernet Adapter, Network Adapter, LAN adapter, Ethernet Card, Network Card, Network Interface Card (usually abbeviated NIC) and so on.
Ethernet is just one family of networking technologies, 802.11 or WiFi or Wireless is another family of neworking technologies, sometimes computers don't have this built-in and so rely on a plug-in card of some sort or on a USB-connected device.
The term card is often used because early computers (especially personal computers) did not include built-in networking circuitry, this capability was provided on plug-in circuit-boards (often called "expansion-cards" or just "cards") which were plugged into expansion-sockets inside the computer. Nowadays most server, desktop and laptop/notebook computers have built-in networking but the term persists.