You're comparing apples to oranges here. ASP.NET is a full-fledged web application framework (or more precisely: two of them - WebForms and MVC). WCF is a set of services and supporting architecture - those are two totally different sets of functionalities and capabilities.
ASP.NET and web development present their own sets of challenges - along with the promise of some benefits, too, of course. Webforms is attempting to be pretty close to Winforms - with components you drag on a form, events you hook up etc. ASP.NET MVC uses the Model-View-Controller approach and tries to be closer to the HTML metal, and give you more control over your HTML/CSS markup.
If you use WCF and/or WCF Data Services, and you encapsulate all the business logic, data validation and data access into separate assemblies, you can always branch out and add a ASP.NET web UI to your solution later on.
Learning how to use WCF and WCF Data Services definitely does not lock you into a position where you can't go and use ASP.NET (as ASP.NET Webforms or as ASP.NET MVC) as the frontend UI for that solution.