Your vet is right, puppies should be wormed once a month from 3 to 6 months then again at 9 and 12 months and then every 6 months after that. I use Milbemax for my lot as well. If you have a dog which scavenges carrion on walks or reguarly eats dog, cat or fox poo then you can worm adult dogs more often, every 3 months rather than 6. You also don't have to go back to the vet every time, you can buy the worming tablets from them and administer them yourself, just mark ahead on a calendar when he's due a dose.