They protects against different things. VPN protects you from network fingerprinting, while single-use VM protects you from desktop/browser fingerprinting. To be truly anonymous you may need to use both (among other things), depending on your threat model.
If you want to/are fine with establishing anonymous identity (i.e. others can establish multiple related acts are done by the same person, but they can't track it back to you as a person), then you may be fine with just using a VPN, and but hashing to replace VMs.
But if you want to prevent people from linking your actions together, then you may need both.