Murmurs are caused by a turbulence in the flow of blood through the heart. Serious ones are caused by heart valve disease or birth defects. Anemia can cause a heart murmur.
Not all murmurs are serious. Some are called functional: that is, there is no disease, just a normal degree of turbulence. In older dogs, murmurs can be caused by the build up of plaque in the blood vessels, much like humans that suffer from high cholesterol. This is usually preceded by plaque building up on the teeth. Bad teeth can also cause heart murmurs in older animals. Serious murmurs should only be diagnosed by a heart specialist. It is not uncommon for Vets to mis-diagnose murmurs as being serious when in reality they are not. Just because a murmur (extra heart sound) is heard by a regular Vet, it does not mean the animal has a serious problem. When in doubt have it checked out before you brand the breeder as not being reputable. Sometimes a dog can be born with a heart defect out of perfectly healthy lines.
A thrill is caused by turbulence of such a degree that you can feel a buzzing or vibration over the heart. It suggest an obstruction to the flow of blood---for example, a narrowed valve or a hole in the heart. A thrill indicates a heart condition.