They are easy to rebuild. People throw them away or give them away prematurely. A new grill (of any decent size and quality) is going to run several hundred dollars, if not over a thousand.
I took my severely decrepit Weber (which was a high end model) and replaced the innards. New burners. New grates. New "flavorizer bars" (as Weber calls them). New piezo igniter. New drip catcher. New control knobs. This was about $125 to $150 worth of parts IIRC. Not the official Weber parts - those would have cost a lot more. I used the Chinese knock-off parts from Amazon. They have been working great. I have zero qualms about having bought the non-name-brand stuff. I did not replace the regulator and hose that screws into the propane tank. The hose is still flexible on mine, it doesn't have any leaks, no cracks in the hose - I saw no reason to replace it. It probably wouldn't be a bad idea to replace it just because of age, so I still might. Nor did I replace the valves that the control handles turn. Those appear to be brass on my grill, and were in fine shape after decades of use. No need to replace them either.
The 20lb propane tank that came with the grill was past it's retirement date, so technically, places should have refused to fill it. But I've never found a place that actually cares about the date. But still, I took it over to the grocery store where they sell "Blue Rhino" brand filled 20lb propane tanks. You give them your empty tank and take their filled one (or you pay them a lot more if you don't have an empty tank to trade). So ... you can guess where my old expired tank went. And I walked away with a new tank. Now I take the new tank to a regular propane refill place and they fill it for much cheaper than doing exchanges at the grocery store. The grocery store deal was a one-off occurrence so I could get a new tank. Hey, ... they don't have any rules posted about trading expired tanks, so why not?
After I had all the new parts installed in my grill I did a test run with it. I cranked up all three burners to high and let it heat up. I checked the temp with my infrared thermometer and it was 670 degrees IIRC! Holy crap! It might have gotten even hotter if I left it heating longer, but I shut down my test at that point. This temp might explain my tendency to incinerate things I'm cooking, but nowadays I only turn on two of the three burners, and after the initial preheat, turn those down to 1/2 for the actual cooking. Compare this to my pellet grill, which usually maxes out at 425. I have seen it hit 450 once or twice. And sometimes it struggles to hold 400 - that's usually when I haven't cleaned the pellet hopper for a while and it has sawdust from disintegrated pellets kind of clogging up the works. But this lower temp combined with the solid steel plate that goes between the fire and the food grates means no flames every touch the food. Things just don't burn in that Traeger. And even if you overcook them, they're still moist. It's slower than propane, but you never burn your food, even if you're not paying attention.