paypal's fine
however its not the panacea
dispute resolution can be a problem
not all people have paypal accounts. however if you believe your target market is likely to have a paypal account then paypal only is a sensible option
going to a third party setup works OK, but if you value your sanity don't use Sagepay, in my experience they are unhelpful, ignorant arrogant and useless. classic symptoms are heres a change that you must make to your site, but you have got 14 days to do it, event though we (sagepay) have known for the last 6 months this fix needs applying. when it works it works well. however depending on volume of transactions it may be expensive
I doubt you will be able to roll your own solution these days, the banks (at least those in the UK) are of the belief that rolling your own solution is a serious issue (subtext they and their associates like sagepay) can't gouge enough money from you if you do your own solution.