On the “broken” server your app pool is running .NET 4.0.
The fix is to set the app pool to run as .NET 2.0
Because ASP.NET AJAX was invented after .NET 2.0, the configuration definitions never made it into the central web.config so you had to declare them on a per-site basis in most circumstances. 4.0 cleaned up lots of that cruft, with the side effect of breaking the default configurations for preceding versions of ASP.NET.
352200cookie-checkIIS 7 throws “duplicate section defined” error for web.config on one server, but not another