The simplest explanation of how to enable Host to Guest & Guest to Host networking with VirtualBox that I've seen:
"Give the guest two network adapters, one NAT and the other Host-only.
The NAT one will allow the guest to see the Internet, and the Host-only one will allow the host to see the guest."
Thanks Matthew!
Source:
http://stackoverflow.com/questions/61156/virtualbox-host-guest-network-setup
Bonus points - mounting a Windows host shared folder with Linux guest:
sudo mkdir ~/_shared/
sudo mount -t vboxsf <Insert Exact Virtualbox Shared Folder Name> ~/_shared/
(or to mount as non-root user:)
sudo mount -t vboxsf -o rw,uid=1000,gid=1000 <Insert Exact Virtualbox Shared Folder Name> ~/_shared/