the direct material blunders I noticed with a quick look:
- Giving the b5-pawn for free was ofc bad
- Instead of 6.-c6 you could have played 6.-Nxd5 with the idea of 7.exd5 Qh4+
- Your d5-bishop was hanging at move 15
- 19.-Bb6 looked a little too fancy since 19.-dxc6 looked totally crushing. However, I can see where you're coming from if you were worried about 20.Ne4. Still, Black can at least win a piece with 20.-Rd8+ 21.Kc3 Rxd1 22.Nxf2 Rxa1 23.Rxa1 Bxf2.
- he could have played 20.Qg1 when it's not over yet (Black's still doing good though)
surprise suggestion: more tactics training