In other words I drag my new extender server control onto my aspx page, set some properties (including the TargetId of the control I want to enhance) and when my control is rendered, the necessary script is sent down to the client to hook up the event handlers, define the behavior, set the properties on the client side etc etc. That control doesn't necessarily communicate with the server. It doesn't necessarily use the XmlHttpRequest object. In fact most extenders I can think of don't need to do any server comms. (An exception to that would be the AutoComplete extender which calls back to the server to get the list of matches for the partial string you've typed in the target TextBox.)
ASP.NET AJAX simply offers you a nice framework for hooking all this up (and a nice framework for talking to the server if you need to). On top of all the goodness that is the UpdatePanel, UpdateProgress etc etc etc.
I'll try and make this clearer when I talk about ASP.NET AJAX in the future as it does all get a little confusing.