Here goes:
My comments are in italics.
1. d4 Nf6
2. c4 g6
3. Nc3 d5
4. cxd5 Nxd5
5. e4 Nxc3
6. bxc3 Bg7
7. f4 c6
Quite risky, isn't it? I'd be more inclined to play Qb3, Nf3, Be3, and Bd3 in some order. And probably an h3 tossed in for good measure.
8. Nf3 Qa5
Should have seen that one coming. Your center is quite impressive, but Black can chip away with Bg4, c5 (wasting a tempo) and Nc6 or Nd7-b6
9. Qd2 Nd7
10. e5 f6
I'd again suggest h3, preventing counterplay ala Nimzovich. His bishop looks like a worthless piece or wood on g6, though.
11. Bd3 fxe5
Simply good bishop on d3 vs. worthless bishop on g6.
12. fxe5 a6
What does a6 do for Black? He could just play b5 now if he's looking for queenside counterplay. This does give you time to castle and not miss a beat in the center.
13. c4 Qc7
A clear difference between White's pieces and Black's. A simply dominating center. Get both rooks on the c and d-files, and your center will shine.
14. c5 e6
A little aggressive, but last time turned out well, so.... This does hand the light squares in the center to Black on a platter. On a different note, Ng5-e6 looks good for White. Bc4 keeps Black's king in the center.
15. O-O Rg8
OK. Can't go wrong with castling, but there are plenty of opportunities to end it before move 20. Something like Bc4, Qf3, Ng5, etc. Also, d6 is a crushing square for the knight, available via Nd2-c4-d6. Black can't do anything about it either.
16. a4 Nf8
Good that you notice how Black had a spot on b5. This also prevents any funny business along the a or b files with 16. ...b5.
Now that Black's king is stuck in the center, and that f7 is deathly weak, the lightbulb should go off right about now. Bc4, Ng5, Qf3, and Black has an unescapable death threat on f7.
17. Ng5 Bh6
18. h4 Bxg5
19. hxg5 Nd7
Yea. About that. Should have continued Qf2! (didn't see this before), and Black is in trouble. An exchange on g5 helps White, as after 20. Bc4 Black is feeling very exposed. HOwever, if Black doesn't take the knight, it will hop to e6 with a queen/rook fork.
20. a5 Qd8
Black has no useful squares for the knight, as they are all covered by the bishop. Black's bishop is entirely useless, as it has all of six squares to move to.
21. Qe2 Qe7
22. Be3 Kd8
23. Rf2 Rb8
Slowly improving the position of your pieces and preparing to double on the f-file. b5 looks scary, but simply gives the pawn away for free.
24. Raf1 Rg7
25. Bc4 Qe8
26. Qg4 Re7
The contrast between the armies is night and day. White has all day to improve his position and prepare for a strike down the f-file, while Black can only sit around and wait.
27. Qh3 Kc7
28. Bd2 Ra8
Your only weakness is the a5 pawn, which you defend with your otherwise-inactive bishop. The end is near for Black.
29. Qb3 Kb8
No distractions! Qb6+ does nothing because the knight covers that square. Proper play would be g4, Rf4, R1f3, and a king march to b4, protecting a5 even more. There is NOTHING Black can do to stop this.
30. g3 Qg8
31. Be3 Qd8
32. Rf7 Rxf7
33. Rxf7 Qxa5
Uh oh. Counterplay from Black. Not good.
34. Bxe6 Qb5
35. Qxb5 axb5
36. Bxd7 Bxd7
37. Rxd7 Ra1+
At least you're up a piece. That helps.
38. Kf2 b4
39. e6 Ra2+
40. Kf3 Kc8
41. Rd6 Ra3
Better for Black would be Ra8 followed by Kc6, although White could still play Bf4 and Rd8+, winning outright.
42. e7 Kb8
43. e8=Q+ Ka7
44. Qd8 Ra6
45. Rd7 h5
46. Qc7 Rb6
47. Qxb6+ Kb8
48. Qxb7# 1-0
Very good game by White. He took advantage of Black's lack of counterplay, and his large center overwhelmed Black.