It is pay-to-win...
...But at the same time not pay-to-win, and that's largely attributed to it being an online game.
This is basically an argument always used when people refer to collectible card games, which Hearthstone is: Those people who don't put as much money into the game to get the newer or more powerful or more interesting/adaptable cards will most likely have a lesser chance when fighting against a player with more options who did buy the cards.
As almost all card games are based around this notion of collecting cards (by buying them) has almost always been an inherent flaw in card games as they grow larger and larger.
I can say for certain I, who used to love the first few seasons of Yu-gi-oh cards(Pre/slightly after GX), basically can't win when fighting those synchro monsters from... whenever they were released. As far as I can tell they don't even have "Normal type" monsters anymore, they're all effect monsters or otherwise.
This would go into other types of arguments, but in a broad sense, it's an example of card games being somewhat pay-to-win.
However, the great thing about Hearthstone, as you have said, is that I can basically unlock all these cards without having to pay for them as long as I put the hours in.
Frankly I don't, I only play Hearthstone occasionally, maybe like once or twice a month (but I do enjoy many other physical card games, mostly magic, but its still relevant to the question at hand since it happens there too >_>), but even with the basic cards for each class I have I can still stand a fairly decent chance against other players (at least for now...). And if I put more time into the game, the more chances I can get cards, whether from packs or from arena, or from dusting, which is another means of catching up.
So the argument in this case would be... Hearthstone's buying cards is more of a pay-to-skip-ahead for people who don't have all that time or want to have some quick fun rather than unlocking cards rather than strictly pay-to-win.
But this largely rests with people just starting out still having a chance against other players, so the cards have to remain somewhat equal (which is difficult with more expansions/etc).
So while it's not pay-to-win in theory (like sploorks said)
...yet at the same time you could say there are pay-to-win aspects within Hearthstone.
But really that's a flaw that almost all trading card games have to deal with and I'm not sure if there really is a solution outside of a few band-aids or easier means to give out cards (like the dusting system which is quite nice; in the future Blizz could even put designed decks/whatnot on the shop for gold or money which would be nice), but too much would just make it unprofitable.
But for now it's just an inherent mechanic that has to be lived with, whether in hearthstone or other collectible card games. *shrugs*