I've often wondered about this docking behaviour as well, and I share your disbelief that it is not a standard control. Unfortunately I think you may be looking at building your own, or using a Third party component... I know Infragistics makes an "UltraDockManager" that can give you similar behaviour to the Visual Studio environment, and I've also stumbled upon this one which might be worth a look. It comes with a nice sample, and the price is definitely right. :-D
http://sourceforge.net/projects/dockpanelsuite/[
^]