avr's are often slower than the pic, but usually have more memory than a pic. depends on your requirements.
Actually, that's not really true (avrs slower than pics). PICs often run at faster clock speeds, but internally PICs execute one instruction every four clock cycles. So, for example, the PIC 16F87x series (which I use all the time) runs at 20 MHz, but only executes 5,000,000 instructions per second.
The AVR, on the other hand, runs one instruction per clock cycle. Taking an ATMega128 (which I have in my Robostix) which runs at 16 MHz, executes 16,000,000 instructions per second.
The PIC would have to be running at 48 MHz just to catch up to that AVR.
As well, from an assembler point of view, the PIC has a very small instruction set (~35 instructions), whereas the AVR has over 100. The AVR also has 32 general purpose registers, including a couple 16 bit ones in there. The PIC has one register, which makes moving data around in memory cumbersome to say the least.
The AVR is much better suited to modern C compilers, but there's a huge pile of example code and experience out there for PICs. I use PICs because the AVR wasn't available when I started, and I have 9 years and several hundred dollars worth of tools invested in PICs. If I was starting over again now, I wouldn't hesitate to choose AVR.