How does directx work - World or View transforms and rotations

Hi, im just starting out with directx and have a few questions.

Playing around with the code and using some books i developed a simple
app to show two Tiny models rotating (using the sdk sample framework),

void RenderTiny()
for (int i = 0; i < m_TinyTextures.Length; i++)
device.SetTexture(0, m_TinyTextures[i]);

// main render function....

device.Transform.World =
// update theta and redraw tiny in different position
device.Transform.World =
Matrix.RotationYawPitchRoll(theta,theta,theta) *
Matrix.Translation(100, 100, 500)* Matrix.Scaling(scale,scale,scale);
// ... snip

Now although i have hacked together this code, i am still not 100%
clear on how directx is working. I have the following questions:

How does directx rendering work? For example, do i rotate the the
model in world space, render it to 2D, then redo this process for the
other models in the scene? What if one model is in front of the other,
does directx store the z buffer depth of each rendered object drawn in
the scene? Any link to a decent tutorial of inner workings just for my
understanding would be great!

In the book it says camera View (device.Transform.View) is less
efficient than world transforms, why is this?

If you are a player in a world, with two characters rotating, do you
rotate the characters with the world transform and move the view
transform (the camera) through the world?

Many thanks in advance,