First of all, yes, you will need to buy a copy of Windows, and I believe you actually need Windows Pro (have never tried to use Windows Home in a VM). I would suggest Windows 7 Pro, as Windows 8 to me is garbage.
You need to understand a few terms:
VM = Virtual Machine
VM Supervisor = the application that allows you to create and run VM's
Host = Your base computer, i.e., your Mac (or PC)
Guest OS = Operating System installed in a VM
What I mean by the last paragraph is VM's work like this:
- You install a Supervisor program (such as VirtualBox) on your Mac.
- You launch the Supervisor and tell it you want to create a new VM.
- You specify how many CPU cores,
- how much physical ram,
- what size virtual disk you want to allocate to the new VM, and
- whether you want to pre-allocate all that disk space up-front, or start with a smaller amount and grow the disk up to the maximum specified as the VM requires more storage space.
- The Supervisor creates a file in your normal filesystem to hold the virtual disk.
- You can then "boot" the VM and install the desired Guest operating system into the virtual disk.
All the files you write to the virtual disk go into the virtual disk file (VMDK, VDI or VHD format file, with VMDK being the most compatible across different VM Hosts). The contents of the virtual disk file are not normally accessible outside of the VM. So you can't easily move files from your Mac filesystem into the VMDK or visa-versa. There is (or was, I never used it) a free utility from VMWare, the VMDK Mount Utility, that allowed you to mount VMDK files as a disk under Windows and OSX.
You can also configure the VM to share access to your Host filesystem as an additional drive. I've never used this feature either, so I don't know what limitations exist.
Finally, assuming you configure a network connection in your VM, you can transfer files through network shares or applications such as FTP or SFTP (which is generally how I transfer files, since I mostly use VM's on servers).
I hope this helped you out.