I was watching tutorials on youtube on how to texture and I don't know which one to follow. At first, I thought vertex paint seems easier but the other looks like it's more flexible. I'm going to use the model in a game so I think I need to know the advantages and disadvantages the the two.
Vertex painting is much more limited. Your mesh's resolution is the upper boundary to the texture detail you can have, since essentially you only have one color per vertex (this color can be a compound of several colors for each edge loop that a vertex is on, but it sums up to just one RGB value).
UV textures enable you to map a 2D image to your 3D mesh. This means you can have a big, complex image with a whole lot more detail on a low poly, low resolution mesh.
As far as I know, modern game assets (especially for higher end games) are almost always UV textured. Vertex painting might be simpler, and does not take as much time to wrap your head around it as UV mapping, but in my opinion the latter is a more important technique, that you should get familiar with as soon as possible.