I've worked on both. Some of the main differences are that SCRUM focuses on the shorter more structured sprints, and prioritizes back log items. Some of the focuses of XP are more on paired programming, prioritizing the tasks, and more test driven development. Both work in iterations and both are flexible enough to handle a volatile changing project.