Fine-tuning is the process in which the parameters of a trained model must be adjusted very precisely while we are trying to validate that model taking into account a small data set that does not belong to the train set.
That small validation data set comes from the same distribution as the data set used for the training of the model. The split of the available data to train and validation set is random.
Transfer Learning or Domain Adaptation is related to the difference in the distribution of the train and test set.
So it is something broader than Fine tuning, which means that we know a priori that the train and test come from different distribution and we are trying to tackle this problem with several techniques depending on the kind of difference, instead of just trying to adjust some parameters (usually we are doing this for reasons as preventing overfitting etc.)