What do you guys think of this game? Thanks!
Alright, here is my analysis.
I like the way you played the opening moves. You developed quickly, gained command in the center, and your opponent played a very poor 'attack' with the King's Bishop and Knight, not only wasting a lot of time but losing badly against proper play. The first mistake by you (white) was on move 6. You needed to play 6. Nxh4 winning a piece. If black recaptures the knight with the queen, then 7. Bxg4 and you are a clear piece up. If black tries to get cute after 6. Nxh4 with Nxf2, the King can safely take the Knight, and even though the Queen can penetrate with 7. Qxh4+ you are still up a piece and black doesn't have any effective attack.
After the actual game 6. O-O?? Nxf2?! 7. Rxf2 Bxf2 8. Kxf2 your position is still ok, but not hands down winning as it would have been had the Knight taken the Bishop on move 6.
More to follow
After 8...h6 black is looking to play g5 quickly followed by g4 and kick your pieces around on the kingside, gaining an attacking initiative. It is important to recognize this and act fast and accurately. In my opinion, 9. e5 isn't that great of a move. It does nothing to stop g5, and doesn't look like it accomplishes much of anything.
I suspect that either 9. Ne5 or 9. h4 are correct, but I'd run the position through a computer, especially since 9. Ne5 potentially opens up some sacrificial lines and I honestly don't know if they work. If they don't then I'd probably play 9. h4 clamping down on g5.
Instead, black was able to push his pawns and gain a ton of space on the kingside against your King, and for some reason decided to trade queens with you. I wouldn't have done this as black, since the Queen exchange really takes a lot of the pressure against your King. Now after 14...Nc6 your d pawn is attacked, and you really need to play 15 Bd3 defending. You did not, and you dropped an important central pawn. You compounded this disaster by playing 16. Bd3 (a move too late!) walking into the fork on c2. This is a very bad position for white that should just be losing. Black is up the exchange and 3 pawns and really has no weakness in his position.
Then for some inexplicable reason, black decided to give away some queenside pawns. Your Knight getting lodged on the f6 outpost was good play by you, and it caused your opponent some difficulties. I wouldn't have tried trading it off for the Bishop with 23 Nd7+ because that Knight is a far, far better piece in this position than his lousy Bishop. Later on, black screwed up badly and somehow allowed you to queen first, winning the game. Not much to say about a position like this, except that passed pawns are dangerous and that black couldn't afford to waste a ton of time in a position like this one. To show the power of the pawns, I will give one easy winning line for black. 45...Ra3 getting behind the passed pawn (generally where rooks are most powerful) then if 46. Kb4 Rxa5! even wins for black since after 47. Kxa5 black plays g3 and the rook cannot stop both pawns, and the white king is too far away to help. Earlier, black could have played 44...Rg2 which is a very simple win (white cannot afford to trade rooks, and the h-pawn can now advance freely).
All in all, you both made plenty of mistakes, but you defintely played the opening well and obtained a winning position by move 6, which is great. You also benefited at the end of the game, when your opponent didn't recognize the danger of your passed a-pawn. Work on tactics, and you'll start bringing home games like this almost every time.