In my opinion, I believe that Metagross is more powerful because of its type, abilities and mega.
Regular Metagross' stats are pretty good; a lot of defense and attack along with an OK amount of speed. Its abilities, Light Metal and Clear Body are also very good. Light Metal lowers damage from attacks such as Grass Knot, Heat Crash, Heavy Slam and Low Kick, while Clear Body prevents others from lowering its stats. If Metagross' HP is a problem, then the steel type will make it resistant to a lot of types.
Metagross' mega is also very good; it gets the ability Tough Claws, which boosts the power of contact moves, which means that it will also absolutely destroy Pokemon with abilities such as Flame Body or Static. Almost every stat is boosted a lot (except its HP, but that's not a huge problem).
With Garchomp, it's also a nice Pokemon; it has some (sort of?) balanced stats, two great abilities and a pretty good (but predictable and slightly mediocre) movepool. It's a bit angering that some good moves are egg moves, but that's still OK. The main reason why Garchomp isn't that good is its mega. Sure, it has 700 base stats, but you can't really see the improvement apart from that. The speed gets cut unlike Metagross (Metagross' speed gets boosted when it mega evolves) and the special defense is barely boosted. It's all with Garchomp's attack and such, which were already good. Plus, it loses its useful abilities and gets Sand Force instead. What I'm trying to say here is that Metagross' mega has a lot of improvement, unlike Garchomp's meaningless mega. Metagross also has better abilities and a better type. (Did I mention that ground has quite a lot of weaknesses? Sure, ground Pokemon can learn OP moves like Earthquake and such, but still.)
In conclusion, Metagross is better than Garchomp. Metagross has little to no problems, especially with its mega, while Garchomp's abilities are still not as good as Metagross' and the mega evolution is useless.