Hamilton and Rosberg came together on lap one as the world champion tried to pass his team-mate, leaving Red Bull and Ferrari to dispute the race.
Verstappen, 18, held off Ferrari's Kimi Raikkonen after team-mate Daniel Ricciardo took a three-stop strategy.
He made his two-stop strategy work to seal a thrilling race near Barcelona.
Hamilton, who had taken a superb pole position on Saturday, made a decent start but Rosberg's was very slightly better and the German was able to draft him down the straight and and pass around the outside into Turn One.
A determined Hamilton was much faster through the fast Turn Three, as a result of Rosberg being in the wrong engine mode, and was closing quickly.
Hamilton dived for the inside on the exit of the corner as Rosberg came right across the track to defend his position. Hamilton did not lift, went onto the grass and lost control, collecting Rosberg's car as he spun back on to the track and taking both out.
It was a stunning end to a remarkable race, which started with the unthinkable.