Magicjack is easy to use. You pay $40 for the first year and $20 there after for per year. Problem with it is that it needs to be connected to a desktop or a laptop to use. Which, by the way, it not practical solution for Nepal.
Like " _ " suggested on his/her posts, you are better off buying a Skype phone and use it along with ring2skype phone number. I am trying to simplify on what " _ " has mention on his/her posts.
1. register for Skype Id.
2. sign up for a phone number @ ring2skype. (sign up for a phone number where you reside in, ie US number if you are in the US, UK number if you are in the UK)
3. buy a Skype phone (one that does not require a desktop/laptop to use. like Belkin desktop Skype phone)
4. sign up for a ADSL line back home.
5. get a UPS back up to run your router and Skype phone ( so that the phone is live even during the load shedding)
6. plug your Skype phone into router and power it up.
7. Now you can call Nepal using the US local number associated with that Skype ID.
8. To call US from Nepal, you need to buy credit from Skype. (you can ask your family members to give you a miss call if they want to talk to you so that the Skype credit will almost never expire)
Your Costs:
ADSL line in Nepal: Rs. 900 per month for lowest bandwidth available plus one time router and UPS back up costs ( I have no idea how much these cost in Nepal)
Skype Desktop phone $80
SkypeOut phone credit $10
And be able to call home any time you want for free: Priceless : =)