Let's see how that would have worked out for my CPU, going by the
price on release listed on Wikipedia...
I bought an 1800X when it was released, which was the highest-end CPU AMD made at the time. If I had paid the listed price, that would have been 499. A cursory search for 3xxx bencmarks tells me that an 1800X is roughly equivalent to a 3600 now. Assuming consistent numbering from AMD, if I had upgraded regularly instead of buying high-end right away, I would have paid 219+199+199=617 for a 1600, 2600 and 3600. Some of that probably would have been offset by reselling the old CPUs, which would have depreciated by less than my 1800X by now, but I think it still would have ended up costing more.
I don't think it makes sense to aim for high-end or low end. I buy the parts that will give me the performance I want at the time, and upgrade when that is no longer enough. Sometimes that means I buy something high-end and keep it for only 6 months, sometimes 6 years. Sometimes something at the low end is enough.
The 1800X has been fast enough for the last 3.5 years, so I haven't upgraded. I'm beginning to find myself waiting for it more often now though, so I'll probably get a 4xxx CPU when they arrive - maybe high-end, maybe not.