The six-sided shape of snowflakes is caused by the way water molecules bond with each other in cold temperatures. The water molecules attract each other so that they form a type of hexagon shape. When they hit a certain temperature, they expand and make a larger hexagon shape.
The difference in each snowflake's appearance is related to the temperature and air flow as the flake is created. The difference in temperature can cause some parts of the flake to melt or form in different patterns. No matter what form the flakes take in their smaller details, the overall shape always turns out six-sided because the bonding style does not change.