What's the difference between 'pal', 'friend' and 'buddy'?
Which one do you prefer to use for calling your close friend?what about a stranger (e.g. for asking for help)?
It depends on personal style. Pal and buddy are informal words and would not be used in formal conversation and rarely with strangers. "Friend" is the more formal word. When talking to strangers some people might say pal or buddy in order to show friendliness. I do that sometimes, mainly to people around my age or younger. With older people I would use a more formal tone.
Note that buddy is more common in North American English....outside North America they'd use a word like "mate". I think pal is used in most English speaking countries.
I like to use the word friend.
Buddy sounds more masculine to me...like two boys who are friends would be "buddies."
Pal is very casual. I don't use it much.
In English (unlike other languages), we don't usually use "friend" to ask a waiter or stranger for something. It's too casual for me anyway. Any other native English speakers feel the same way?
I don't think 'Buddy' and 'pal' are especially common to hear in the UK. In actual fact I think the most common use of those two words is probably when you want to be rude or dismissive to someone. For example "Look pal, you're asking for trouble" or "Look buddy, you're asking for trouble."
I wouldn't call a waiter or waitress 'friend' because well, they're not my friend. I would just say 'excuse me' to try and catch their attention.
However the use of 'mate' is extremely common here, and like 'buddy' it is pretty much only used between males. You can use it with strangers, the men don't have to be friends. It would be a perfectly normal interaction in the UK for a man to ask a male stranger for directions by saying "Excuse me mate/Sorry mate, can you tell me how to get to X?" So with that in mind, you could try and get a waiter's attention by saying 'Excuse me mate...' This is more informal, but definitely not uncommon. You wouldn't address a woman as 'mate' though, and as Oliver said if the person is an older gentleman you might not use it either to be more respectful.
I agree with Paul that 'pal' or 'buddy' are often used to be rude or dismissive, at least in a UK context, as in 'Look, pal .....' followed by a condescending or even threatening comment. It can make a remark seem less rather than more friendly.
This shows the importance of understanding culture and social conventions : you need to do more than simply translate a word to know how to use it.
'Friend' is a standard neutral term. It's neither formal nor informal - it's just a basic everyday word.
I wouldn't use 'pal' or 'buddy'. 'Pal' strikes me as rather old-fashioned, and can often have negative associations. For example, if you say that someone has 'pals' in the government, it might suggest that there is bribery or corruption of some sort going on. 'Buddy' is a mainly American term, but it can also have negative connotations, for example 'He's always trying to be 'buddy buddy' with the boss' is a derogatory comment.
It wouldn't be normal to use any of these with strangers. It would just seem odd and slightly creepy to call a stranger 'friend', and calling a complete stranger 'pal' or 'buddy' might have the opposite effect of the one you intend. The over-familiarity might give the impression that you are looking for an argument or even a fight with them. Best avoided!