First of all, I encountered the term MachineLearning much more in my Business Intelligence classes than in my AI classes.
My AI Professor Rolf Pfeifer would have put it that way: (after having a long speach about what intelligence is, how it can be defined, different types of intelligence, etc.). ML is more static and "dumb", unaware of it's fisical environment and not made to interact with it, or only on an abstract basis. AI has a certain awareness of its environment and interacts with it autonomously, making thereby autonomous decisions with feedback loops.
From that point of view, Ugnes Answer would be probably the closest.
Besides that, off course, ML is a subset of AI.
Machine Learning is not a real intelligence (imho), it's mostly human intelligence reflected in logical algorithms, and as my Business Intelligence Prof would put it: about data and its analysis. Machine Learning has a lot of supervised algorithms which actually do need humans to support the learning process by telling what's right and what's wrong, so they're not independent. And once they're applied, algorithms are mostly static until humans reajust them.
In ML you mostly have black boxes designs and the main aspect is data. Data comes in, Data gets analized ("Intelligently"), Data goes out, and Learning in most times applies to a pre-implementation/Learning fase. In most cases ML doesn't care about the environment a machine is in, it's about data.
AI instead is about mimicking human or animal intelligence. Following my Prof's approach, AI is not necessarily about self-consciousness but about interaction with the environment, so to build AI you need to give the machine sensors to perceive the environment, a sorto of intelligence able to keep on learning, and elements to interact with the environment (arms, etc.). The interaction should happen in autonomous way and ideally, as in humans, learning should be an autonomous, ongoing proces.
So a drone which scans fields in a logical scheme for color patterns to find weeds within crops would be more ML. Specially if the data is later analized and verified by humans or the algorithm used is that a static algorithm with built in "intelligence" but not cabable of rearranging or adapting to its environment.
A drone which flies autonomosuly, charges itself up when battery's down, scans for weeds, learns to detect unknown ones and rips them out by itself and brings them back for verification, would be AI...