They look pretty equivalent. I assume you'd downgrade the card before the annual fee hits, since there are 2% cashback cards with no annual fee (like the citi double cash), which is better than 2 miles/$ since miles can only be redeemed on travel purchases.

The barclaycard has a 5% bonus when you redeem which the capital one card doesn't. So assuming you get the $400 bonus, you would want to first redeem about $394, get an extra .05*$394= 19.70, then redeem that last $25.70 (since the minimum redemption amount is $25). So you'd end up about $20 ahead of the capital one card.

Another factor is which card would be easier to hit $4000 in spending with. The capital one card is visa, the other is mastercard. If you are a renter, I can suggest paying your landlord with radpad, which charges a 1.99% fee with mastercard, and that fee is more than negated by the 2 miles/$.