I find that the biggest differences are:
Brains:
The raspberry Pi is the better choice if you are interested in computing power. It would be the clear choice if you want to do say, computer vision via a webcam.
You can plug in bluetooth and wifi dongles more cheaply to a Pi than buying a similar Shield for the Arduino.
The Pi will be a much better choice if want an HMI. With a video header and USB and an OS that controls video and HMI devices (keyboards and mice), it is much easier to turn the Pi into a control center for human interaction.
It has a GPIO header, but extra electronics are usually necessary to use it safely to do anything more than light a few leds.
Brawn:
If you want to take input from various sensors and/or drive a bunch of motors, servos, actuators, and led arrays, then the Arduino is pretty much a ready made solution. Just add script.
Combining the two:
You can get the best of both worlds by combining the two together. There is a product called Alamode which lets you take advantage of brawn plus brains. There are some additional features as well, such as an SD card reader, a built in time clock, and direct connection of servos (by soldering in a header) and headers for FTDI, ICSP, and a GPS module. Actually, the product is essentially an Arduino clone (plus some extras) that piggy backs on a Pi and brings the Pi GPIO to the top along side the Arduino pinouts.