Virtual disks
When you create a VM, you create a virtual disk as well. This disk can be of fixed size or dynamically expanding. In the first case, the file will not grow, in the latter case, the file has a small size at startup and will grow as needed by the VM to the maximum size of the virtual disk. The dinamically expanding disk can be compacted using Lukas's answer steps.
Snapshots
When you take a snapshot, VBox create a new file in which all changes will be writed instead of the original virtual disk file. This new file will grow as needed to the maximum size of the virtual disk. If you take another snapshot at some point, this file will stop growing, VBox will create another file which will grow at its turn.
Deleting snapshots
If you don't need snapshots, then you can delete them, the data will be commited in the original virtual disk file (or original snapshot file in case of consecutive snapshots.) Just stop the VM, select the snapshot you want to delete, use the button with the red cross in the snapshots tab. It can take a long time, depending of the amount of data in the snapshot.
Restoring snapshots
The icon with the up arrow is to restore a snapshot (and forget all data changed since the shapshot date).
Best Answer
When you take a snapshot, VirtualBox stops writing to the .vdi and starts writing to the snapshot file. When you merge, it merges the snapshot file into the original .vdi and you're left with the original .vdi plus the changes.
To answer the question explicitly, yes.