I am guessing that you may have updated a site that is a starter kit application by copying in the new 4.6 install package. That is what I did to have the same problem. During the first compile with the new v4.6 files there, it finds conflicting classes in the apparently obsolete DLLs already in the bin directory.
To solve this, I did a fresh Starter Kit application in another directory from the v4.6 kit, started it to make sure it worked, and then noted the differences in the bin directory to identify which DLLs I needed to remove. These are the ones I pulled out. of my older application (save them somewhere just in case):
DotNetNuke.Authentication.ADSI.dll
DotNetNuke.Authentication.ADSIProvider.dll
DotNetNuke.Caching.BroadcastPollingCachingProvider.SQLDataProvider.dll
DotNetNuke.DNNScheduler.SqlDataProvider.dll
DotNetNuke.HttpModules.Authentication.dll
DotNetNuke.HttpModules.Compression.dll
DotNetNuke.HttpModules.DNNMembership.dll
DotNetNuke.HttpModules.Exception.dll
DotNetNuke.HttpModules.Personalization.dll
DotNetNuke.HttpModules.UrlRewrite.dll
DotNetNuke.HttpModules.UsersOnline.dll
DotNetNuke.Provider.DBLoggingProvider.SqlDataProvider.dll
DotNetNuke.Provider.Membership.SqlDataProvider.dll
After this I had one more error. I fixed it by adding a reference to the DotNetNuke.dll file in the Bin directory (even though it was the new one and was already there).
I was then able to compile and run.
Hope this helps. I was running fine after that until I tried to update my modules. I'm now unable to compile due to something in the Survey module. I was also unable to install the LiveId module for some reason. So, more troubleshooting to do, but wanted you to see what got me through the first problem.
Rick.