If the problem is an international trunk, all you can do is use a company which uses a different international trunk.
It sounds like AT&T is your
Local Exchange Carrier and you are trying different long-distance companies by using different calling cards.
These calling card companies are often just
reselling service on other carriers. It is difficult or impossible to determine whose long-distance network you are actually using when you use these resellers.
To ensure which long-distance network your calls are routed on, you might try going directly with a tier-1 carrier such as MCI or Sprint. Who is the default long distance carrier provisioned on your telephone line?
Are you always initiating the call? Do your parents ever initiate the calls?
Have you considered using
VoIP. You may not get better quality, but you'll pay less.
