What's the difference between work on and work at for this sentence?
The children work hard on/at their homework.
English Language & Usage Stack Exchange is a question and answer site for linguists, etymologists, and serious English language enthusiasts. It only takes a minute to sign up.Sign up to join this community
Cambridge Dictionary's definitions are good as far as they go:
I would expand that: to spend time and effort repairing, improving, or completing something. It usually applies to an object or task. "I'm going to work on my homework." or "I'm going to work on my car."
Note that "work on" can also have a different meaning, referring to the environment in which labor is performed: "I am a fisherman; I work on the ocean." The actual work involves fish and fishing equipment. The location or environment is the ocean, the person doesn't actually do anything to the ocean, itself.
Work at: to try hard to achieve something.
I would expand that: to try hard to improve or achieve something. It usually applies to a skill or characteristic, which is often expressed in the form of an action or condition. "To become better at English you need to work at it." or "I need to work at my piano playing."
Note that "work at" can also have a different meaning, referring to the location of employment: "I work at McDonald's".