I'm using Asterlink, and, it works pretty well for me. I've also used iax.cc, and, their services are pretty decent. Both charge around 0.02/minute/USD, and, you'll need to setup a SIP device or asterisk server.
You can get a Toll Free number in the US for $0.02 to $0.05 per minute. But, if you are not in the USA, forwarding the call to your actual phone will still cost you the international rates, in addition to the toll free rate.
If you have broadband Internet, try VoIP. You can get a Toll free number for the same rate, but forward it to a VoIP virtual phone number, using a phone adaptor on your end. That way, there are no additional charges.