<p>Is there a simple out of the box way to impersonate a user in .NET?</p>

<p>So far I've been using <a href="http://www.codeproject.com/KB/cs/zetaimpersonator.aspx" rel="noreferrer">this class from code project</a> for all my impersonation requirements.</p>

<p>Is there a better way to do it by using .NET Framework?</p>

<p>I have a user credential set, (username, password, domain name) which represents the identity I need to impersonate.</p>

Here is some good overview of .NET impersonation concepts.
Michiel van Otegem: WindowsImpersonationContext made easy
WindowsIdentity.Impersonate Method (check out the code samples)
Basically you will be leveraging these classes that are out of the box in the .NET framework:
WindowsImpersonationContext
WindowsIdentity
The code can often get lengthy though and that is why you see many examples like the one you reference that try to simplify the process.