Auto and * are definitely not the same.
When talking about RowDefinitions, Auto means that the size of the elements in that row will determine the height of that row.
* means that the row's height will be as large as possible, but relative to other *-sized rows.
For example, if you have rowdefinitions of <*><Auto><*>, this means the Auto row will be the height that its child elements want to be, and the rest of the grid-height will be evenly devided between the other two rows.
When talking about RowDefinitions, Auto means that the size of the elements in that row will determine the height of that row.
* means that the row's height will be as large as possible, but relative to other *-sized rows.
For example, if you have rowdefinitions of <*><Auto><*>, this means the Auto row will be the height that its child elements want to be, and the rest of the grid-height will be evenly devided between the other two rows.
This same principle also goes for the Width of ColumnDefinitions.
For example,
<Grid Margin="10" Background="Orange">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Button Grid.Row="0" Content="Button1"/>
<Button Grid.Row="1" Content="Button2"/>
<Button Grid.Row="2" Content="Button3"/>
</Grid>
Result:
If define Height as 1* and 2*, it means the height of 2* is twice the height of 1*.
* is the same as 1*.