Hey Garcia, nice post! Here is what I think:
First of all, I agree with Dire about 6.. Bg4. It leads to exchange of light square bishops, gives knight a tempo to go to e5, and gives a tempo for queen to go to e2, all of which favors white. Simple 6.. Bf5 seems better to me. After 6.. Bg4 and following exchange, I would say your position is really, really not good, now matter if you like it or not
9.. Bd6 is not a bad move, but I would probably prefer Nbd7 or even Be7. After Bd6 he always has this nasty Nc4, and I just hate your position after that bishop is gone, black squares are very very weak. Same after 9.. Bb4, it just cannot be a good move, you are not even pinning that knight! In fact he could probably even play a3 after Bb4, because position after Bxc3 bxc3 Qxc3 Rb1 looks kind of horrible for black from what I can see, but maybe Fritz would find something.
12.. c5 is a big mistake in my opinion. First of all, like Dire mentioned, you are opening his bishop yourself. Secondly, in order to make moves like c5, you must have your rooks prepared. So why not put "a" rook to c8 and "f" rook to d8 first, and then think about pushing? Because now, after a simple 13. Rad1 you are already in pretty big trouble, probably even close to losing due to following Nc4--> Nxd6.
13.. Nb6 fails, but so do all the other moves.. Still, 13.. Rfd8 was required, though I think your position there is very bad after Nc4.
And yeah, 17. g3 is pretty bad.. Good job spotting c4! But in my opinion, 18.. Qb4 and the whole following line is favorable for white more than black. Why are you rushing so much? You have a dominating position, so you don't have to hurry at all. It is clear, that b7 pawn will always be under attack, so why not play something like a6-->b5, or just b6? It's not like white can do anything.. Because now, if he plays 21. Rxb7 instead of Qxb7, suddenly you might find yourself under attack if you don't play carefully. The pawn storm on king side can become pretty annoying. You don't want to give your opponent that kind of counter play when you have such a dominating position.
Also, I find position after 23. Qxc3 Nxc3 24. Rb7 not so clear. Black's obviously better, but you overestimate your knight a lot.. It can be dislodged from there
Very nice sequence between moves 23 and 28, now you have a completely winning position
due to that pawn on c4 and his terribad bishop.
30... Nd3 is a mistake in my opinion. Don't forget, that he has a passed pawn on d4 too, so you need to start pushing your own as soon as you can! That's why I would prefer Rxa2 or Re2, to move the rook out of the way and start pushing.
Now tell me what would you do if he played 31. Re7 or Re4 instead of dubious Ra5? The thing is that his "d" pawn becomes very fast too, and there is nothing in his way, like your rook is in a way of your pawn. For example let's say 31. Re4 c3 32. d5 , I already think that white is not worse, because how exactly do you stop that pawn?
Good job spotting the Re2 and c3 idea!
The resulting endgame is really not one of those endgames that are hard to win. I would have played Nh3+ instead of Nd5, and taken on a2, but it doesn't really matter anymore.
43... Nb6 is good.
I don't really understand 49.. Nd5, were exactly are you going if he doesn't play Rd7? I would have just played Kf5--> g4 and mate him quickly and painlessly
Though of course Nd5 wins too, it doesn't matter.
In general, a good game and a very good post!