Winter may be several years long, which is effectively a natural siege in itself. Why not simply wait a year or two for the people of Westeros south of the Wall to be starving and worn down, versus attacking relatively soon after winter begins?
There are 2 theories that are linked to this that I have seen, neither has been confirmed. I have my own theory as well.
Theory 1 :- The White Walkers are the cause of this long winter and it can only spread across Westeros as they move across the land, this would mean that if they stop and wait the winter actually wont be so bad in the more southern parts of Westeros allowing people to prepare, grow more food etc.
Theory 2:- The White Walkers come with the winter, moving with the cold and the dark like animals migrating with the sun. It may be that the White Walkers are more like Animals then people and act largely on instinct. They understand that a big winter is coming and so are driven to move with it understanding it will allow them to go to lands they could not travel to normally because it is to hot. In the books we have only seen the White Walkers in darkness, they seem to be averse to light, even avoiding moonlight. The TV show ignores this, largely because it is really hard to make it clear what is happening in night shot scenes. It could well be that as the nights get longer the white walkers are simply moving taking there wights etc with them.
Theory 3 (my theory) The Night King had his hand forced by Jon Snow, he understands that by taking the wight the people of the 7 kingdoms will now see the myths are true and start preparing, so he needs to attack now before they have time to prepare, ironically Jon's actions at the frozen lake hastened the attack of the Night King it might also be a case that everyone north of the wall is dead, so there are no more people to fill his armies, if people know the night king is coming body's in Westeros will be burned as a matter of course reducing the number of corpses that can be raised.
I would say this is because the wall is destroyed, and the way to Westeros is open. The Night King doesn't need to wait for the people to starve, because he doesn't have to worry about losses.
Any answer would only be speculative and as such the question may be out of scope of this SE
That being said, magic or a simple tactical decision
There are way to many ways to explain how magic could enter into it.
There are also many ways a simple tactical decision could enter into it.
There is no way to know currently