Every platform has its challenges and limitations. Your choice depends on a lot of factors such as cost, accessibility, maintainability, etc.
InfoPath makes developing forms much faster and easier than ASP.NET, however, each computer that runs the form must have a copy of InfoPath installed.
As for limitations, it all depends on what you want to accomplish and how complicated you plan to make your forms. I've seen extremely complicated Expense forms created for internal use by Microsoft. Developed by a team of professionals, this form is not to be attempted for the faint at heart. However, not everyone needs such complexity. New Hire forms should be a snap in InfoPath.