I have found these cards to be the best so far for accumulating Avios:
BUSINESS - FREE
CapitalOnTap Visa - 1 point per £1 spend, covertible to Avios
£75 sign-up reward
http://CASHBACK.CAPITALONTAP.COM/
PERSONAL - £300 annual fee
British Airways American Express® Premium Plus Card - 1.5 x Avios per £1 spend
FREE Companion Voucher
http://www.americanexpress.com/en-gb/credit-cards
PERSONAL - FREE
Barclaycard Avios Mastercard - 1 x Avios per £1 spend
FREE British Airways cabin upgrade voucher
http://www.barclays.co.uk/credit-cards/avios-cards/
Does anyone have any better suggestions for credit cards to accumulate Avios points & BA vouchers?