24. 0-0 was the main error I saw. At this point you are in an endgame and the king does not need saftey as it cannot be mated. So you should have played 24. Kd2 Rxa2 25. Ra1 Rb2 26. Rhb2 and he cannot avoid trading his last rook and you clean up the position with the extra rook.
But yes, you have the main idea to trade material when you are up. Very nice game, congratulations and keep up the great chess!
Was my general policy of exhanging once ahead a bad one? Where could I have pressed home the advantage through an earlier attack from move 17 onwards?
This was my first game on the site, thanks in advance for any guidance.