(I work at SmartyStreets, where we research and experiment with address-related UX.)
Country should go first. Then you can customize the appearance of the form, if you wish, for certain countries, so that users will feel more comfortable entering their address.
However, going entirely backward from the broadest region type to most narrow isn't the best strategy because it will throw users off. I've written about this here. (Further, there has been some mention of using postal code to auto-fill city/state: you don't want to rely on the postal/ZIP code to do that, because they change frequently, and in the US at least, a ZIP code often maps to multiple cities/states, whereas the city/state hardly ever change.)
What you should do is put the address field next. Ideally, you'll combine as many address fields into just one so users can enter their address in a way natural to them. (But don't forget to verify their input or you might be hurting later.) Even more ideally, start with the street address field and then auto-complete the rest from there. This is most natural to the users.
For example, here's a free address auto-complete service which fills out city, state, and then verifies to get the ZIP code after the user has typed only (part of) their street address. Here's some more info about address auto-complete. It also works on freeform address fields.
Address auto-complete is hard; read some of the UX lessons we learned during development.