To have one object face another in a vector, given each objects 3D coordinates, you can apply to the following function for a Matrix rotation of the first to look at the second.
public static Matrix LookAt(Vector3 pos, Vector3 look)
Matrix rot = new Matrix();
rot.Forward = Vector3.Normalize(look - pos);
rot.Right = Vector3.Normalize(Vector3.Cross(rot.Forward, Vector3.Up));
rot.Up = Vector3.Normalize(Vector3.Cross(rot.Right, rot.Forward));