You can take a look at "game coding complete". It explains the bare bone structure of a game engine. Further it shows you how to write an edior in c# and implement network play. Another book that comes to my mind is "3d game engine design". This takes itself way more serious and the first part is more an advanced math course but you can benefit from it aswell.