These are container controls. They are used in two cases :
1)Organize how you controls are drawed in the UI.
2)Created custom DataTempates for collection controls such as TreeView, ListView, ListBox ...
The grid is like a matrix.
The DockPanel docks its child elements to a given position (Left, Right, Top, Bottom ...)
The stack panel stacks its elements in a vertical or horizontal way.
You can use them in hierarchical manner. The better way is grid->dock or stack panel.
The canvas is a coordinates based container. It's the unique one in WPF all the other containers fit their elements to the available space. You can still give them width and height values but it's not how things should be done.
Rajendra.prasad, if this helps please login to Mark As Answer. | Alert Moderator