We used paypal's payflow pro on our latest project. PayPal is TERRIBLE for development. For auth.net, you just put the account in test mode, send it some transactions, and get the appropriate responses. For PayPal, you have to have a sandbox account, and users in the sandbox, and this and that and blah. What it ends up meaning is that it's HARD TO SHOW YOUR CUSTOMER THAT PAYMENT IS WORKING. They have to have a sandbox account, and manage all of that stuff. Or you just conference call and screenshare, right?
Now, it turns out PayPal's not TERRIBLE, but I'll never use it again. WAY more hassle on that project than any of my others (I do ~10 ecom-enabled apps in a given year).