HBA's and NIC's both connect your workstation to a switch or storage, so what is the difference? The main difference is the type of storage/switch you are connecting to.
HBA stands for Host Bus Adapter and is used to connect to block level storage such as Fibre Channel, SATA or SCSI. Most commonly this term is used when referring to Fibre Channel HBAs in systems like Apples Xsan. These are the PCIe cards that go in your workstation to add fibre channel to a computer or server that doesn't already have it.
Click Here to learn about migrating away from Xsan.
Fibre Channel HBA example
NIC stands for Network Interface Adapter and is used to connect ethernet storage to a switch or server. Almost all computers have a built in NIC, commonly these are 1GbE ethernet NICs using the ultra-common RJ45 connection below. Many users add additional NICs to add 10/25/100GbE connectivity or to add more 1GbE connections on a workstation.
Ethernet NIC with a RJ45 Connection