My neighbor who has landline phone service through Shaw is required to put a +1 in front of the 250 area code when phoning my cell phone which is also in the 250 area code, why is this required when we both have 250 area codes for our phones and when she makes the call with the +1 prefix is she being charged long distance if so why ?
The "250" area-code covers all of British Columbia. So, "long-distance" charges might apply, e.g., Vancouver to Prince George. (If both parties are Shaw Phone subscribers, there are no long-distance charges, since the "traffic" is carried ONLY through Shaw's network.)
In Campbell River, all calls from Telus: 250-923-XXXX to Shaw: 250-914-YYYY are "local" calls, even though the "exchange" (the middle 3 numbers) are different. The various TSPs (Telephone Service Providers) update their database, to determine which exchange is "local" to another exchange; hopefully, they do this correctly!
When you signed-up with a wireless company, did you pick an "exchange" code that is "local" to your location? For example, my friend works in Vancouver, and chose a "local-to-Vancouver" number for her work, but often returns to Campbell River for the weekend. So, on the weekend, while her phone physically is in C.R., it's still a long-distance call from a land-line in C.R. to her number.
P.S. In Norway, all telephone calls within their country are "local" -- no long-distance charges. Simple!