Anybody have any suggestions for a quality, reliable internet phone service?

I don't care if it's actual VoIP, done through a website or internet connection, etc.

Just want to be able to have my own phone number, be able to forward it to any number I want when I need to, all distance calling so I don't have to pay for long distance when calling out, caller ID, and voice mail.

Any suggestions on a reasonably priced service that offers these features would be appreciated.