VMM is more like system verilog reference manual, it talks about the coding guidelines, recommendations & rules.
AVM is about verification methodology which you can use for any language.
VMM and AVM are both class bases verification methodologies... VMM is not open source, but AVM is open source !!! AVM makes use of TLM concepts for communication between testbench blocks while VMM makes use of much raw mailboxes and stuff... But, both have there pros and cons !!!
You can also try out OVM which is URM + AVM, much more interesting stuff !!!!
OVM is open source...
VMM and AVM are both class bases verification methodologies... VMM is not open source, but AVM is open source !!! AVM makes use of TLM concepts for communication between testbench blocks while VMM makes use of much raw mailboxes and stuff...
I recommend OVM than AVM if starting new. But remember OVM/AVM/uRM is new and immature against VMM. VMM is open source for any "real user" - as you can get the source code for your use!