I don't think this is a machine key issue 
I have recently had my work PC replaced, on which I had several local "test" copies of DNN sites.
For each one of them though, I have had trouble moving it onto my new Windows 7 (x64) machine.
I am using DNN 4.9.5 in all instances.
Although I can get around the issue ultimately by deleting the site and recreating it (mostly I am using our own custom modules, so there aren't many pages to any one site) I obviously don't want to be doing this all the time, especially as we are now offering hosted solutions to our customers and therefore will need to regularly move sites from a Staging server to a Production server.
Generally what I have been doing is simply copying the folder contents (web.config and all), and maintaining the folder structure, from old XP machine to new Win7 machine. Other changes involve going from old IIS version (6 maybe ... can't remember .. whatever is on XP) to 7.5 (standard Win7).
The DBs are all local also, and these are being shifted from SQL2005 to SQL2008. Backups of the DNN database were taken, copied across, and restored on SQL2008.
Once IIS is configured, the sites themselves load fine.
When trying to login as Host though, I get no errors, but it appears as though I have not logged in and I am just left on the Login page. As in, the Control Panel doesn't appear, and there is no way for me to edit the pages or anything like that.
I have double checked the machine key and that all seems fine (ie. same as what is used on XP). Because I had to rebuild the first site, I ended up with a new machine key and have tried using that on subsequent moved sites (in conjunction with copying the password out of the aspnet_Membership table) but it has made no difference. Basically once I enter in the user name and password and press login, I am left on the Login page, with no error but with also no means to control the CMS
Anyone have any suggestions or advice?