You outplayed your opponent in the opening and built up a substantial lead. Did you pause at some point to count?
One good place to count would be after

. This invasion looks a little unreasonable, so it is natural to want to punish it, but would simply defending at c12 lead to an easy win? The way you played was actually better, but gave W more scope for complications. Still, the result through

was superb for B, and you now have the game completely won.
Another good place to count would be after

. How much of the right side territory do you need to keep in order to win? You certainly do not need to capture the W invasion stone. How about playing

at Q11 for safety and territory? Is this enough to win, without allowing W any chances for an upset?
Losing the upper right group was a disaster, but at least you got a squeeze, for enough compensation to keep you in the game. Good job maintaining your composure and finding that.
The rest of the game is just engame technique. Here you need to take some time to identify the big points and make sure you get your fair share. For example, when W plays B3, could you counter with M2? If both sides ignore each other and continue their incursions, the trade seems roughly even. Letting W get both of these big moves is submissive.