You need to set the foreground in the style and not in the TextBlock for it to work.
<TextBlock Text="HelloWorld ">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Setter Property="Foreground" Value="LightGray"/>
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Foreground" Value="Red"/>
</Trigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>