If I have to choose between those two options, I would go for “Il est de X” to make it less ambiguous since “il vient de X” can simply mean that he took the train/car/etc. from X. Furthermore using être show that it is truly part of him, i.e. it defines his character. You could also use “Il est originaire de X”.
That said, to be even less ambiguous I usually use some more precise expressions such as Il est né à X, Il a grandi à X, Il habite depuis Y ans à X, and so on.
Leave a comment