consider the bus, its cheap, pretty comfortable, and maybe slightly faster than the train.
It
was faster than the train. Since last October, the Madrid-Lleida leg in the high-speed line Madrid-Barcelona-French Border was opened and now Madrid-Barcelona takes between 4:45 and 5:15, depending on the number of stops. There's no bus that takes less than 6:30.
Right now, the line is only opened at its two thirds, more or less, and there are still speed restrictions due to a delay in the implementation of the signal system. Now, the highest speed is about 150 mph. Once everything is installed and the line completed (hopefully by 2007), the highest speed will be 220 mph, and the duration of the Madrid-Barcelona trip will be about 2:30.