Blocking pawns is not always the best. If you have much more pieces developed you want to open the game so that your pieces can do the most damage that is possible ;)
Your opponent also played quite bad with moves as: 2.f3, 5Qc1, 7.g4 also looks quite bad: 7.g3 would be better i think, adding presure to the center. 9.Na3 also looks bad. A better idea would be d3 and Nd2 afterwards. And ofcourse 23.Bxg4
This checkmate was unavoidable once he had moved his bishop to take my knight. I put him in check with only one move, and that move was into a checkmate on the next move.
Lessons to be learned:
1) Take checkmate over pieces. When i saw that i was going to lose my rook no matter what i did (when he forked me) i decided, "Well, I need to see how i'll deal with this, so lets make it give me the advantage." I had just read an article which showed techniques like "the windmill", which is where the player can put the king in check continuously and take off the opponent's pieces in the process. Thinking of the windmill technique, i decided to put him in check and deal with his knight later. Of course, i could not do the exact "windmill" but i could do the next best thing: mess up his structure and take other important pieces up the board, where I could block in his king, attack his rook, and protect my pawn as i tried to promote it. (This promotion, had i succeeded, would have let me take his knight with no chance of it escaping, further showing that an approach towards checkmate is better than for pieces. The pieces will come off eventually.)
The promotion did fail, but it succeeded in taking off their pieces to make it closer to even in the points game, and led to me successfully attacking his king in such a way which he could not escape.
2) Block their pawns, and try to get your's further up the board than they have theirs! Yes, this can be difficult to do, as many will accept trades or block your's first, but when you can take control of the game by blocking off the center, you can gain a distinct advantage, with the advantage being more free space to move and adjust your pieces, and them having few beneficial moves do to their lack of space. Also, your pawns are closer to a promotion than theirs are.
Now go and have fun, play chess, and grow in your skills as a chess player.
If you'd like, critique my post on how I can improve my "articles" or w/e--this is my first real article, and I was kind of experimenting with some of the features on here.
And in case you were wondering about my name, PlayChessLikeHockey, then it is because i enjoy the sport, both as a fan and a player, and because I like making stupid puns. The pun is that I like to check people a lot. (Checking, in hockey, is hitting the person physically, and in chess, being a big nuisance and forcing them to push their pieces into unfavorable positions. Essentially, I like being annoying while still staying in line :D)