I would recommend making friends with someone who knows an awful lot about computers. My computer buddy built my computer from scratch. Every year so we just update parts that are likely to be worn.
The overall price is pretty much the same as if I'd purchase from a shop. But because my computer buddy knows which parts need replacing, we keep on going from year-to-year with hopefully no problems.