Based on the notes of my Machine Learning lecturer, I am struggling to understand how the two algorithms differ? Both seem to select the most informative feature A (based on least entropy), then create subsets of the example set for each value of A. Then create a new branch on the tree by recursively calling ID3 on each subset. Could someone please explain how they differ?
The ID3 algorithm is an algorithm for inferring a decision tree: given a training set, it tries to find a decision tree that tends to label a large fraction of the training set accurately. See, e.g., https://en.wikipedia.org/wiki/ID3_algorithm.
There is no such thing as "the generic decision tree learning algorithm". There is no such generic algorithm.
There are many algorithms for learning a decision tree. ID3 is probably the most well-known algorithm for decision tree learning, and the simplest, but there are other algorithms. Other algorithms include C4.5, CART, and others.