The interaction of a number of factors allowed a small corner of North-Western Europe to remain in revolt against a super-power, and eventually gain independence for some of the provinces.
The Netherlands was a very hard country to attack; with numerous large rivers, swamps and many walled towns; each of which required a pro-longed siege to capture. As a result, it was very hard for the Spanish to made progress in the Netherlands; and progress that was made would come at a great cost and over a lengthy period of time as a result. However, this did not provide an insurmountable obstacle: regardless of Dutch defences, the Spanish were able to re-conquer much of the Netherlands under Parma. Military considerations and underlying economic considerations therefore had a much larger impact on the outcome of the revolt; one can see that the final stale-mate position that Parma reached was along an arbitrary military line rather than any geographical feature.
Moreover, had Spain had full access to its resources as a super-power, there is little doubt that it would have crushed the revolt with the vastly superior resources potentially at its disposal regardless of any Dutch defence.
The Netherlands enjoyed very effective military and political leadership with William and Maurice of Orange. William brought some measure of cohesion to the disjointed Netherlands. Whilst his attempt at unifying the Netherlands against Spain with the pacification of Ghent failed, and Orange ultimately failed to realise his vision of a united Netherlands, he went some way to achieving at least some unity among Northern provinces. William was instrumental in convincing the Northern states to accept the Union of Utrecht, crucial in the development of the Northern provinces forming a common interest in fighting the Spanish; rather than allowing attitudes of provincial selfishness and self-interest to...