All miners run a full node, indexing all the unspent transaction outputs (UTXO). Thus, from the computational difficulty perspective, there's no difference between verifying old and new coins that are being spent.
However, there's a reasonable assumption that all miners (and, after all, all honest Bitcoin users) want to protect the value of their assets and thus have an incentive to keep Bitcoin network healthy. Spamming the network with a great number of transactions moving the same coins back and forth among a few addresses, with no apparent purpose, is quite easy and can be carried out by any malicious user. This extra overhead is obviously not good for the network and might even cause a delay in confirmation of other transactions.
To fight this, Bitcoin has a notion of Bitcoin Days Destroyed which prioritizes transactions spending older coins. Miners are not forced to employ this strategy (by the protocol), but they do so because it's good for the network, and thus for them. That's why you can observe a huge variance in the time it takes to confirm otherwise look-alike transactions with low or no fees.
Spamming the network with transactions paying standard fees has obviously become infeasible. But this strategy is still useful when prioritizing fee-less transactions, or any great number of otherwise low-priority transactions.
UPDATE: The notion of Bitcoin Days Destroyed is not so important anymore since these days almost all miners reject zero fee transactions. Spamming the network "for free" is no longer possible.