Here is an interesting article on InfoQ about the debate over agile methodologies, and which is best: Scrum, XP, either, both or neither?
Personally I think they are entirely complimentary as they cover different aspects of software development. I find it useful to think of Scrum as an agile management methodology, whilst eXtreme Programming (XP) focuses more on agile engineering.
In an earlier post, I explain my views on this in a bit more detail; see here…
eXtreme Programming versus Scrum.
What do *you* think?