I have finally found the way:
public void AsyncEvent(SPRemoteEventProperties properties) {
...
List lst = clientContext.Web.Lists.GetByTitle(properties.ItemEventProperties.ListTitle);
clientContext.Load(lst);
clientContext.ExecuteQuery();
ListItem item = lst.GetItemById(properties.ItemEventProperties.ListItemId);
clientContext.Load(item.ParentList, l => l.Fields.Where(field => field.Title == "FieldName"));
clientContext.ExecuteQuery();
foreach(TaxonomyField field in item.ParentList.Fields) {
TaxonomyFieldValueCollection newTopics = new TaxonomyFieldValueCollection(clientContext, String.Empty, field);
newTopics.PopulateFromLabelGuidPairs("Term A Label|term-a-unique-id;Term B Label|term-b-unique-id");
field.SetFieldValueByValueCollection(item, newTopics);
}
item.Update();
clientContext.ExecuteQuery();
If you find a better solution, please post it, this one works pretty well.
If you want to know how to format the "Term Label|term-unique-id", look at the Taxonomy Term Store, under the Sharepoint Admin page. A term's unique id sample: d5e733d2-a904-4bee-afbd-632440fdc125.