In reply to Tony the Blade:
Old chain was stretched so I put a new chain on last week.
It was skipping under load on smaller sprockets and small chain ring.
No problem in large chain ring when derailleur had chain under a bit more tension.
Cassette looked worn so changed cassette - no improvement.
Fiddled with rear derailleur - no improvement
Looked at brand new chain and found a couple of stiff links.
Each evening for a few days faffed about with chain tool to loosen stiff links.
Still no improvement. Kept finding stiff links.
Gave up and replaced brand new chain with another brand new chain.
It now works as near to perfectly as anything will on my bike.
TL;DNR
Check for stiff links even on a new chain.
If you replace cassette don't throw old one away for a few days as it may not have been the cassette.
Post edited at 14:12