I am a big fan of
Broadvoice and
Cordia.
I have SIP trunks from both providers going to an
Asterisk-based server. I use
Cisco 7960 phones to connect to the server (one at home, one at the office). I also use a softphone on my laptop to connect to the server when on the road. The 7960 can connect directly to a SIP trunk without an intermediate server - Broadvoice supports this very well under their
Bring Your Own Device (BYOD) plans.
Cordia allows non-US numbers. I have a +86 number through them. All of my US +1 numbers are through Broadvoice (they even had some 212's, which no other VOIP providers seemed to have).