I have managed both DNN and Sharepoint intranet and internet sites in a corporate enviroment, so I have experiences in both worlds.
First let's start with the annoucement of Dotnetnuke Professional and what information we know about it. I have been at OpenForce all week and have heard the buzz and I have posted a few entries on my blog with my understanding and my guesses as to what is going to happen with Dotnetnuke Professional.
Sharepoint as an intranet solution makes a lot of sense for a Microsoft centric community that will actually utilize the the work flow, versioning, etc of Sharepoint. Far too often Sharepoint turns into nothing more than a $40K network drive to store files.
Dotnetnuke is certainly making headway in support a "toned down" feature set that Sharepoint provides. While versioning and Work Flow aren't apart of the core product yet there was plenty discussion about it coming. When? Who knows? However, DNN does have Active Directory integration and can do a lot of things that most Intranet sites need and want.
Using Sharepoint as an Internet facing site, in my opinion (based on Sharepoint 2003) is a disaster. On an Internet site you want to control every aspect of what is presented to the user. Sharepoint will let you get close, but there are always those things you can't control and therefore have to live with.
Where as with Dotnetnuke it is easy to get exactly the product you want because you are in complete control over everything.
Cost alone is a huge advantage to Dotnetnuke. A module in Dotnetnuke that has the same functionality as a Web Part in Sharepoint will cost most likely 1/10 of the price of the Web Part.
In the end the requirements should drive your decision. However, I find it hard to ever justify a Sharepoint solution based on cost and headache of actually getting it to do what you want.
I hope that helps,
Stuart