Bale posed an early threat for Real, as he drilled the ball just wide before forcing a corner with another effort inside the opening 10 minutes.
Barcelona believed that they should have had a penalty when Neymar tangled with Fabio Coentrao inside the box, but the referee was not interested, leading to an altercation between both sets of players.
Bale continued to look lively after the break, playing his way into the box inside the opening five minutes before tapping just wide.
The Welshman eventually found the back of the net with just over 20 minutes left to go, but his goal was disallowed for a foul in the buildup.
Barcelona immediately capitalised on their opponents' error, with Marc Bartra heading in at the other end just moments after Bale's effort was ruled out.
© Getty Images
It looked like the match would be heading for extra time until Bale made a blistering run down the left side before beating Bartra on the edge of the box to squeeze the ball into the bottom corner.
Neymar almost got Barcelona back into the tie in the final moments, smashing the ball towards the Real goal, but his shot was kept out by the post.