Sounds like a double-hop issue - your user connects to the asp.net site, and then the asp.net worker process tries to connect to the Active Directory on its behalf, and fails, since the ASP.NET worker process probably doesn't have enough permissions to query AD.
You'll need to provide some extra credentials when you create the principal context, using some defined user with a password and sufficient credentials to query AD.
You do not have this issues of course in your console app - it runs under your own user account which has plenty of privileges, for sure :-)
If you're serious about Active Directory Programming in C# or VB.NET, go buy this book:
The .NET Developer's Guide to Directory Services Programming
Joe and Ryan have plenty of stuff on using AD from ASP.NET apps and how to deal with that. Also, check out their book-accompanying website forums.