I was disgusted by the Spanish vote, as much of the blogosphere apparently was. After sleeping on it though, I am much more understanding.
According to most polls I have heard of, huge majorities of the Spanish were against being involved in the Iraqi War. That the Popular Party was still cruising to a victory Sunday reveals that the Spanish electorate simply didn't think the issue was as important as others. The Madrid bombing made them rethink their priorities, just as 9/11 did to us.
Their default position was that the Popular Party was on the wrong side of the issue, and this, more than anything, drove the result I believe. If you start from faulty premises, you are unlikely to arrive at a good answer. Perhaps having the vote still as close as it was is actually a good sign.