Schumacher edged his Brazilian teammate by six-tenths of a second to secure his 46th career pole. Barrichello looked as if he had his second pole of the season after his third and final run during the hour-long session was two-tenths of a second faster than Schumacher's best effort of the day.
But shortly after, the four-time F1 champion from Germany came around the 2.936-mile Circuit de Catalunya in one minute, 18.226 seconds while averaging 138.251 miles per hour.
Schumacher, a three-time winner at this race, has won three events this season and owns a 14-point lead in the World Drivers' Championship standings over younger brother Ralf.
It was the ninth time and third year in a row that a Ferrari driver took the pole at the Spanish Grand Prix.
Ralf Schumacher and fellow Williams-BMW driver Juan Pablo Montoya of Colombia took the second row. Ralf Schumacher won in Malaysia, was second in Brazil and third two weeks ago in San Marino. His time Saturday was almost a second behind his brother's.