This is the best definition I saw posted. The best sales pitch I've seen for Vagrant is that it lets you create a config ("Vagrantfile") from which you can build a virtual machine. Now you, or someone else, can take that vagrant config and recreate the same vm (on multiple platforms btw - virtualbox, kvm, etc) for testing and development.