The key to pronouncing names lies in finding out the origin of the name, that is, which language the name belongs to, since pronunciation follows some general rules and patterns. If you know something about the language, and are familiar with how it is spoken, pronouncing names correctly is easier.
Consider, for example, the French name "Fleur," which is pronounced as "Fl-uh." It follows the basic rule of pronouncing "eu" as "uh" and not making a full "r" sound when the word ends with the letter "R". Similarly, in Spanish, the consonant "J" is pronounced as "H," which is why the Spanish name "Jesus" is pronounced as "Heh-soos."
Almost every language has common names, so if you learn how to pronounce one, you can pronounce the names of many people. "Singh" is a very common last name among Indians, for instance, and is pronounced as "Sing." "Sharma" is another common last name and is pronounced as "SH-er-ma." Last names in India are spoken in the same manner, irrespective of which region of the country the person hails from.
Pronunciation of names can be looked up on certain websites as well, Inogolo.com being one of them. Lists of names in different languages along with origin and pronunciation are provided.