The maximum standard transaction size was introduced in PR 2273. In this PR, the rationale is given as
Extremely large transactions with lots of inputs can cost the network
almost as much to process as they cost the sender in fees.
A similarly worded comment lives in the codebase today above the code that performs the check.
This limit was introduced at 100 KB; when segwit was introduced, it was changed to be a weight limit changed to 400000 weight which results in an equivalent 100 KB non-witness size limit.











