Valencia have won their first Copa del Rey title since 2008 while the Catalan giants have been left with just the La Liga trophy to show for their efforts this season despite widely being tipped to claim a treble.
Marcelino's side had a golden chance to take the lead in the fifth minute when Rodrigo - having been presented with the ball by a mistake from Clement Lenglet - broke into the Barca box before rounding Jasper Cillessen, but Gerard Pique was back to make an incredible goal-line block.
The Spanish champions enjoyed plenty of possession in the first 10 minutes but were struggling to find gaps in the final third as Valencia continued to close the space.
Barca had to wait until the 18th minute for their first real chance of the match - it arrived after Lionel Messi danced into the Valencia box but the Argentine's effort was deflected wide of Jaume Domenech's post.
Valencia were offering a huge threat on the counter, though, and made the breakthrough in the 21st minute when Gameiro collected a clever pass from Jose Gaya before sidestepping Jordi Alba and smashing the ball past Cillessen.
Valverde's side had been warned on a number of occasions before the opening goal and Los Che were well in control of the contest approaching the 30-minute mark, which brought a water break.
Things went from bad to worse for Barca in the 33rd minute, though, when Valencia scored their second of the match.
Again it was another terrific move as Carlos Soler drove away from Alba down the right before delivering an excellent cross onto the head of Rodrigo, who guided the ball into the back of the net.
Messi and Ivan Rakitic both forced Domenech into excellent saves late in the first period as Barca looked to halve the deficit, but Valencia entered the half-time break with a well-deserved two-goal advantage.
Marcelino's team only had 23% of the first-half possession and not much changed at the start of the second 45 minutes as Barca continued to enjoy plenty of the ball.
Valencia had the first clear chance of the second period, though, with Goncalo Guedes just missing the post with a powerful effort in the 49th minute at the end of another smart move.
Barca had a golden chance to register in the 56th minute when a strike from Messi hit the post before falling at the feet of Vidal but the Chile international somehow scooped the ball over the crossbar.
Valencia lost their captain Parejo to an injury in the 65th minute but the strength of their squad was shown by the fact that the talented Geoffrey Kondogbia was introduced.
Messi was doing his best to get things moving for Barca as the clock continued to tick on. The Argentine had little help from his teammates, though, with Philippe Coutinho and Malcom struggling to make their mark.
Cristiano Piccini replaced Gameiro in the 72nd minute as Valencia changed to a more defensive formation, moments after Pique had just turned a low Malcom cross wide of the post.
Barca were back in the match in the 73rd minute, however, when Messi converted from close range after Lenglet had seen his header kept out by a mixture of Domenech and the post.
Valencia struggled to get out of their own half in the period that followed as the holders desperately searched for a second which would have forced extra time.
As it turned out, the best two chances late on fell to Guedes but the 22-year-old somehow fired wide of the post in a one-on-one with Cillessen before missing from distance moments later after the Barca goalkeeper had been left up the field following a corner.
It mattered little, though, as Los Che held on in the final seconds to claim a famous win, leaving Valverde's team with much to ponder during the summer break.
BARCELONA (4-3-3): Cillessen; Semedo (Malcom 46'), Pique, Lenglet, Alba; Rakitic (Alena 77'), Busquets, Arthur (Vidal 46'); Roberto, Messi, Coutinho
VALENCIA (4-4-2): Jaume; Wass, Garay, Paulista, Gaya; Soler, Parejo (Kondogbia 65'), Coquelin, Guedes; Rodrigo (Diakhaby 88'), Gameiro (Piccini 72')