I would like to know what's the difference between:
- I went for a run today
- I went on a run today.
And when it's correct to apply each of those.
Thanks a ton.
If you analyse it down to the minutest details, there is a difference in meaning.
When you go somewhere and the purpose of your leaving is to partake in some activity, you can (with certain activities) choose to emphasise two aspects of your leaving:
When you use on (or to, or whichever other preposition happens to be used with the particular activity you’re talking about), you’re emphasising the first of these two, focusing on the actual activity itself. This is what you’d say with the verb be, which cannot denote intent or purpose or goals, only presence: you are at dinner, on vacation, and on a run.
When you use for, you’re emphasising the second: for implies a goal or objective of some kind. It’s akin to saying that you’re going somewhere in order to be on/at/in the place or activity you’re talking about. This is what you’d say with the verb leave, which (if a goal is specified) always indicates intent, purpose, or goal—never simple presence: you leave for dinner, for your vacation, or for a run.
Go is a bit in-between here, in that you can express both aspects with it. But you can’t always express both aspects with all activities, and with places, go behaves like leave and cannot express presence (you can be at the airport, but you can neither *leave at the airport nor *go at the airport except in different senses).
With quite a few activities, though, you can express both meanings:
I went for a run/walk/hike/stroll. (running, etc., was my purpose when I left)
I went on a run/walk/hike/stroll. (running, etc., is what I did)
I went for dinner with my brother. (dinner is the purpose when leaving)
I went to dinner with my wife. (dinner is what we did)
As you can see, for speaks only about your intention when you left, while on (or to, etc.) denotes your actual activity and therefore implies that the activity really did take place.
In actual, practical usage, there is very, very little difference between the two variants and they are used interchangeably in nearly all situations.
But if the activity never took place, as you can guess, you’re limited to using for. For example, if you intended to go running when you left, but something happened that meant you didn’t go running after all, then on is not an option, because you never actually partook in the activity mentioned—you only intended to:
I went for a run, but I fell and sprained my ankle before I even made it to the road.
(not “*I went on a run, but…”)
I went for dinner with my wife, but she went into labour on the way, so we had to go to the hospital instead.
(not “*I went to dinner with my wife, but…”)
The American English idiom is "I went for a run," to say "I went running (this morning or some other time)."
If I google "I went on a run," the vast majority of results actually say, "I went for a run," suggesting that that is the default idiom in American English. "I went on a run," on the other hand, could suggest that you participated in an event -- a 5K run for charity, or a marathon, or some other running event.