The difference really comes down to the fact that in meta-learning, there is a population of tasks $\tau$ which have distribution $p(\tau)$. The goal is to perform well on a task drawn from $p(\tau)$. Generally 'perform well' means that with only a few training steps or data points, the model can give good classification accuracy, achieve high reward in an RL setting, etc. 

A concrete example is given in the original MAML paper [1], where the task is to perform regression on data given by a sinusoidal distribution with parameters $p(\theta)$. The meta-learning goal is to get high regression accuracy on tasks where the data is drawn from distributions coming from $p(\theta)$. 

In contrast, transfer learning is a bit more general since there's not necessarily a notion of a distribution of tasks. There is generally just one (although there can be more) source problem $S$, and the goal is to do well on a target problem $T$. You know both of these explicitly, unlike in MAML where the goal is to do well amongst any unknown problem drawn from a certain distribution. Very often, this is performed by taking a model that performs well on $S$ and adapting it to work on $T$, perhaps by using extracted features from the model for $S$. 

The extent to which this will succeed obviously depends on the similarity of the two tasks. This is also known in the literature as domain adaptation, and has some theoretical results [2], although the bounds are not really applicable to modern high-dimensional datasets.

1. [Model-Agnostic Meta-Learning for Fast Adaptation of Deep Networks][1] (Finn et al) 2017.        

2. [A Theory of Learning from Different Domains][2] (Ben-David et al) 2010.

 [1]: https://arxiv.org/pdf/1703.03400.pdf
 [2]: http://www.alexkulesza.com/pubs/adapt_mlj10.pdf