I believe what happens is after your game has initialized itself, the application enters loop like below.
Code:
while (!isApplicationReadyToQuit) {...}
Inside that loop calls to Update() and Draw() are made. Now depending on what type of game timing is established will determine how often the Update() and Draw() methods get called. This is hidden by the framework.
The base.* versions of these methods are only responsible for executing the base functionality of the base class. I do not believe they make calls back and forth to each other. For example, base.Update() calls Draw() and vice versa.
Does that make sense?