If I am creating web applications using ASP.NET and Silverlight is nowhere in the future and there's no need to expose data to third party services (eg, no oData needed), are there any advantages of using WCF Data Services over the traditional ADO.NET methods we've been using over the years?
WCF and ADO.NET is two different usage.
ADO.NET is use for data-mining from SQL DB,excel etc, which is end to end communication.
WCF is a middle gateway like web service, use for response the data when asp.net (or other) request.
Except for the learning experience - not really.
I would choose to use something like WCF Data Services if:
- you need to support multiple front-ends, especially if you need to support things like mobile devices etc. (that might only have an HTTP stack)
- if you want to expose data to third parties
- if you need to access your data from a browser only (for whatever reason)
- if you plan to support Silverlight
Since you seem to explicitly rule out all of these, I don't really see much benefit. But it might just be a good learning experience to stay on top of your game!
Plus, even if you're using WCF Data Services, that service must somehow read that data and provide it - so you'll have to do some ADO.NET stuff (possibly with the help of an ORM) here anyway. The WCF Data Service only adds complexity and code to maintain.
So if you have limited resources (time, money, your own energy): focus on making your current ADO.NET access as perfect as possible (e.g. using Linq-to-SQL, Entity Framework or whatever).
If you have unlimited resources - try both ways and compare and judge for yourself :-)