Machine learning essentially means making a computer learn patterns from data. How is this fundamentally different from giving ‘instructions’ to the computer on how to work?
Let us look at an example. Suppose we want to teach someone how to move from the starting point to the ending point, as in the figure below:

Instructing means we explicitly tell them to:
Here, the person just follows what they have been told without learning anything.
Suppose that instead of giving instructions, we showed them the paths followed by 100 people to move from the starting point to the ending point. These may not be as accurate or straightforward as before since the path followed by each person could be slightly different from others. But there will be a similarity or pattern that they can pick up and replicate. The more data we give, the more accurate the replication. This is precisely the concept of ‘learning’ in machine learning.

But why do we need learning at all?
For simple problems like the above example, instructions work perfectly. But as problems become increasingly complex, these instructions may not be explicitly known to us. Even if we know, we might not be able to define it well mathematically. This is where the concept of ‘learning’ becomes essential. Here, we just need to feed enough data, and the machine figures out patterns in them. Deep learning techniques have proven to work so well with such complex problems. It can be shown that it gives an excellent approximation to any unknown function.
So, does it mean that learning is better than giving instructions?
Well, there is no ‘better’ here. Every solution to a problem should be interpretable according to its context. While learning can work well with complex problems, it might not always be interpretable in the context of the problem. Learning sometimes can even lead to a wrong conceptualization of the problem. In such cases, we must incorporate domain knowledge into our solution to make it effective. This can only be done by humans. For example, suppose we have built a self-driving car using ML. If the computer detects anything in front of it as an obstruction, it will treat them similarly. But when we drive a car, we treat a pedestrian in front of the vehicle differently from something silly like a dustbin. This domain knowledge is essential for the ML algorithm to work efficiently for our problem. This can only be achieved by human intervention in the form of instructions. The current research in machine learning and AI aims to build solutions to highly complex problems while making it as human-interpretable as possible.