I encountered the issue #ryaneastabrook described exactly. We had our own existing membership provider for our external application and when attempting to "wire up" YAF to use our membership provider we encountered problems immediately. Browsing the forum while unauthenticated worked perfectly fine, but as soon as I logged in using an account from our existing application, I got the "Unable to find the Guest User!" error message. I stepped through the authentication process and verified that the account was being validated correctly and it was. I literally spent hours googling that error message and wasn't able to find a solution but there were posts within this forum that pointed me in the right direction - ASP.Net Roles and the YAF role provider.
A little about YAF roles (from my experience) - when YAF membership accounts are created through the "Register" section of the YAF app, they're assigned the "Registered" role found in the "yaf_prov_Role" table in the YAF database. All YAF accounts intended to have write permissions in the forum require this role assignment.
Now since I was using the role provider for our existing application and not the default YAF role provider, I knew the "Registered" role didn't exist in our "aspnet_roles" table in our database. I decided I'd try inserting the "Registered" role into our existing "aspnet_roles" table using the id of the role in the "yaf_prov_Role" table. Next, in the code of the account creation/registration section of our external application, I assigned the newly created "Registered" role to the membership account. The next time I logged into the YAF app with an account created in our existing application, everything worked fine - no guest error. I also made sure to assign the new "Registered" role to our existing accounts.
It turned out that the root cause of the error didn't really have anything to do with the Guest account itself, thus, the error message is a bit misleading. To summarize, all I did was add the "Registered" role to the "aspnet_roles" table in our existing database (using the same role id from the "yaf_prov_role" table) and then assign the rule to our existing and new accounts.
I hope my own experience can be of some help to others who might be encountering the same problem.