Teaching you dog to come when called is one of the most valuable things he can learn. It is a stepping stone to lots of future training.
You need to have something which is motivation to reward your dog when he displays the desired behavior. A small food treat is an is an ideal reward. Use a clicker. Click immediately the dog exhibits the behavior. This enables him to clearly understand what behavior he is being rewarded for
In real life situations you will often be calling your dog away from something which he really enjoys so you have to make him believe he is coming to something better.
Step 1: Start by getting the behavior your want
Have the dog on a lead and start backing away.
step 2: Reward him with a treat when you get the desired behavior
When he follows put a treat on the ground.
step 3. Repeat the process.
Back away again as the dog starts to get the idea you can move a little faster.
step 4: continue to reward him for the desired behavior
As you repeat the exercise he will start to get the idea of what is required.
step 5: Add the cue word such as "come" or "Here"
Once the dog is reliably coming to you, you can add the cue to the behavior. As you start the procedure you say the cue word.
step 6: Reward the behavior
The dog will now start to associate the cue word with the bahavior
Step 7: start to move faster and faster
Reinforce the desired behavior by repeating the process over and over gradually increasing the speed.
step 8: now for the hardest part
When your dog is reliably coming to you, it is time to introduce distractions.
You can use a toy that he really likes or, simply, put some treats on the ground. As he goes to investigate the treats gently pull him towards you using the cue word once. As soon as he turns to come to you - click. It is important for him to understand that he being rewarded for choosing to come to you.
step 9: if he is reluctant to come, you can slowly walk backwards
At first, he may not be keen to come to you. Gently pull the leash and slowly walk backwards.
step 10: reward him for staying with you.
Now you should reward him for staying with you and not wandering back to the thing he wanted.
step 11: Release him by saying "OK"
The distraction could be another dog he wants to go play with. You let him know that is is now alright go by saying a release word like OK
Image via Makezine website.
Once the dog is reliably coming to you in the usual training place or an area where you control the distractions, it is time to increase the difficulty. Take him to a busier place where there are a number of distractions. Continue with the training repetitions. Over time you will be able to remove the leash.
Here is a YouTube video showing the whole training.