As I travel around England, Southern Wales, and Southern Scotland, I hear the rural and working-class people in some areas use "should" (and never "ought"), in other areas "ought" alone (without "to") and in others again "ought to".
In modern use, both are modal (except that "ought to" is semi-modal - we don't say "can to", "would to", etc.).
- Both derive from proto-Germanic words signifying "debt" (both moral and financial), from Old English past tenses (should from sceold, past of sceall, which went on to become "shall"; ought from ahte, past of agan, which went on to become 'owe');
- all the usages of "ought" are shared by "should"...
- ...but should has additional usages (e.g. in a clause after "that", indicating purpose - "in order that ... should be helpful..."; e.g. in first person enhancing politeness - "I should like another sandwich, if you would be so kind").
(The Germanic origins indicate that these words aren't Viking, but are Anglo-Saxon - not merely blandly "Old English".)
In literary works and legal situations, "ought" seems to be preferred - a matter of tradition, rather than meaning: perhaps originally because (for some reason) it was considered more prestigious.
The many dictionaries, "English as a second language guides", websites etc. that consider "should versus ought" decree "same meaning but..." for diverse "but"s - most commonly "ought is stronger", and "ought is more formal". That's not what I hear in the streets and villages of England.
So finally, the question, in two forms:
- has anyone done a systematic study of where in England and the parts of Wales and Scotland that have spoken English from pre-1066 times which of SHOULD, OUGHT and OUGHT TO is preferred in common (not over-educated) speech?
- has anyone done a corresponding systematic study in Old English documents? (or perhaps in Middle English documents).
That might enable us to determine groups of Anglo/Saxon/Jute/other settlers who brought which word, before Nobles, Lawyers, Scholars and others who travelled around perhaps confused the issue?