According to the Windows Applications Development with Microsoft .NET 4 70-511 Training Kit
What is the difference between the Label control and T
Even though TextBlock lives in the System.Windows.Controls namespace, it is not a control. It derives directly from FrameworkElement. Label, on the other hand, derives from ContentControl. This means that Label can:
Template property).Content property).DataTemplate to its content (via the ContentTemplate property).Do whatever else a ContentControl can do that a FrameworkElement cannot.
Label text is grayed out when disabledLabel supports access keysLabel is much heavier than TextBlockSource
Some more interesting reads below