Why we have different seasons on earth?

It is because of earth's tilt on its axis. As of now, earth is approximately 23.5 degrees tilted on its axis in the orbit around sun. The side of the earth is closer to sun gets more heat from sun. That is why when it is summer in north hemisphere, it is winter in south hemisphere and vice-versa.