My Best Sicilian Ever
Nice one,
just two thoughts:
I like to fianchetto my king's bishop, too, but here it seems to me that the weakness of your dark squares is a bit to heavy after 5.Bg5. I liked your 4...d5 idea better, I don't think you have to fear White's development as he has to lose time with his bishop, too. Mind that after 4...d5 5.exd5 exd5 the most active bishop move 6.Bb5 doesn't work: 6...Qa5+ 7.Nc3 d4, and I don't think White will get enough for the piece.
You played the rest of the game very well, carefully defending after your opponent had dropped that rook for his vague attacking chances. However, hadn't you been so intent on harvesting pawns, you could have crowned your game with a beautiful mating combination on move 24: