My local dictionary helps point out the difference:
through - by means of (a process or intermediate stage)
by - indicating the means of achieving something
Each word has a host of other uses but these are the closest match. The key is the note of an "intermediate stage" with "through". Through is most applicable when the means is merely one step of the process:
I'll send it to you by/through mail.
"Mail" is the intermediate step; the end step is receipt of the object. For comparison:
My house is heated by/through gas.
"Gas" is not an intermediate step. It is the source of the heat.
Using this distinction, one could theoretically use "by" in nearly every instance where "through" would work; the converse is untrue. You could not use "through" everywhere you could "by":
My house is heated by gas.
I'll send it to you by/through mail.
I'll pay you by check.
I learned that by/through a lot of practice.
Success only happens by/through hard work.
The tickets are available by/through the Internet.
Through/by including a warning prompt prior to asking a SA related question, SPAM probes have been thought to isolate workload from the assessment of SA.
Generally speaking, however, "through" will usually hold a more accurate connotation that redirects the focuse away from the means. Saying "success happens through hard work" implies that "hard work" is the intermediary process and not simply an end in and of itself. In other words, it is more typical (and sounds more correct) to use "through" when possible:
I learned that through a lot of practice.
Success only happens through hard work.
This is mostly due to the other definitions that "through" reserves. In this case, "continuing in time toward completion of" is also included in my local dictionary as a meaning of "through".
The final examples are somewhat of a toss up:
I'll send it to you by mail.
I'll send it to you through [the] mail.
These are both acceptable (although I would add the edit in the latter) and mean roughly the same thing. The former slightly emphasizes the method of delivery; the latter focuses more on the act of sending and receiving. The same is true of the Internet example.
Through/by including a warning prompt prior to asking a SA related question, SPAM probes have been thought to isolate workload from the assessment of SA.
Again, if the intent is to focus on the method, use "by"; otherwise use "through".
The summary:
- use "by" when "through" does not work
- if "through" has a specialized definition for that case, use "through"
- otherwise, use "by" when focusing on the method; use "through" when focusing on the end result