Is there any important thing to note from this game? [FEN ""]

1. c4 c6 2. d4 d5 3. Nc3 Nf6 4. e3 e6 5. Nf3 Nbd7 6. Bd3 Be7 7. O-O O-O 8. b3 b6 9. Qe2 Bb7 10. Rd1 Qc7 11. Bb2 Rad8 12. Rac1 Qb8 13. h3 Bd6 14. e4 dxe4 15. Nxe4 Bf4 16. Nxf6+ Nxf6 17. Rb1 c5 18. dxc5 bxc5 19. Ne5 Qa8 20. Ng4 Nxg4 21. Qxg4 Bh6 22. Bf6 Rd7 23. Bf1 Qc8 24. Rxd7 Qxd7 25. Rd1 Qc7 26. Bg5 Bxg5 27. Qxg5 h6 28. Qd2 Be4 29. Qd7 Rc8 30. f3 Bc2 31. Rd2 Bb1 32. Qxc7 Rxc7 33. a3 Rb7 34. Rb2 Bg6 35. b4 Kf8 36. Kf2 Ke7 37. Ke3 Kd7 38. Be2 Kc7 39. b5 Rb6 40. a4 f6 41. a5


I was analyzed this game, but sadly couldn't find anything to learn from it. Did I miss something, or is this just a simple game as it appears to be?
Even simple games are full of possibilities. If you want to learn, you have to investigate these possibilities. Ideally without an engine.
Some lines of investigation:
What happens after 23.Bxh7 and Rxd7?
What about 23.b4 cb 24.Bxh7?
How does 26.Rd3 with the idea of Rg3 pan out?
How does 31.Qxc7 Rxc7 32.Rd8+ differ from the game?