Q. Do you think Zechariah 12 is talking about Armageddon, or perhaps the Gog/Magog invasion?
A. Would you believe both? Compare these two verses.
“I am going to make Jerusalem a cup of trembling that sends all the surrounding peoples reeling” (Zechariah 12:2). Note the phrase “surrounding peoples”.
Then in Zechariah 12:3 the Lord said, “On that day, when all the nations of the Earth are gathered against her I will make Jerusalem an immovable rock for all nations.” Note the phrase all the nations of the Earth.
I think even though these two verses are adjacent to one another in the text, they describe two separate operations that are at least 7 years apart. First, the surrounding peoples will be sent reeling, and sometime after that all the nations of the Earth will come against Jerusalem. These two verses are not part of the same thought and don’t even belong in the same paragraph.
I think Zechariah 12:2 will set the stage for Ezekiel 38 and the beginning of Daniel’s 70th Week, most likely involving the fulfillment of Psalm 83 and Isaiah 17, while Zechariah 12:3 will take place at the end of Daniel’s 70th Week, just before the Lord’s return.
Between these two verses there will be over seven years of almost continuous warfare in the Middle East.