If you're calling a UK mobile that is physically in Spain, just dial the UK mobile number. It does not matter where the mobile is physically located.
If you're calling a Spanish mobile, dial 00 (the prefix for outbound international calls from the UK), then 34 (the country code for Spain), and then the 9-digit Spanish mobile number. If you're calling from a GSM mobile phone, you can dial +34 (including the plus symbol) instead of 00 34.
To ring a mobile phone that is roaming in Another Country, you dial the number in the mobile's home country, exactly the same way you do when the mobile is at home.
To ring a Spanish mobile that is roaming in England, if you are in Spain, just dial the 9-digit Spanish mobile number. If you are outside Spain, prefix the Spanish mobile number with telephone country code +34. In particular, even if you are in the same country where the Spanish mobile is physically located, you must still dial the number as an international call to Spain.
(The plus sign means "insert your international access prefix here." From a GSM mobile phone, you can enter the number in full international format, starting with the plus sign. The most common prefix is 00, but North America (USA, Canada, etc.) uses 011, Japan uses 010, Australia uses 0011, and many other countries use different prefixes.)
Dial the UK mobile number exactly the same way that you would if it were at home in the UK.
To call Spain from any GSM mobile, anywhere in the world, dial +34 and then the 9-digit Spanish number (landline or mobile).
00 34 and then the Spanish mobile number.
The physical location of a mobile phone is not relevant to how you dial it. To call a US-based mobile phone from the UK, dial 00 1 and the area code and number.
The US dialling code from anywhere outside the US is +1
To call a mobile phone when the user is roaming internationally, dial the mobile number exactly the same way you would when the mobile user is at home.
You dial the normal number. The phone network will handling routeing the call to wherever in the world the mobile currently is.
+44 is the international code for England.
To call an English mobile that is roaming in another country, dial the English mobile number exactly the same way you would if the mobile were in England. English mobile numbers begin with +44 74 through +44 79. On a GSM mobile, enter the number in international format, beginning with the plus sign. Otherwise, replace the plus sign with your international access prefix (most commonly 00, but many countries use other prefixes. Australia uses 0011 and other prefixes.).
Just as you would call an English landline.
-340
International Subscriber Dialling means that the subscriber can dial an international telephone call directly, without going through an operator.
When you are calling a mobile phone, always dial its "home" number, even if it is roaming internationally. Thus, to call a Spanish mobile phone roaming in the US, you dial the Spanish mobile number, beginning with country code +34. From a UK landline, that's 00 34 plus the Spanish mobile number.