Both, I think.
That is to say, you should (and will) always have your current "go to" language that you use for everything that doesn't already have a language or platform dictated. For me, that started as Perl and later moved to Ruby (I adore languages that treat regular expressions as first class citizens), and right now I'm sort of between languages as my current crush. You might even have a few "go to" languages depending on your interests (e.g. what you like to code when you're not being asked by somebody else). These are the things you will know deeply and the things you'll likely regard as your "master" skills. You may even be lucky enough that the languages you use for work coincide with those that you enjoy the most. This is where the depth of your knowledge will be the greatest.
And then you have your breadth of knowledge. I can also code in C/C++, Python, Go, Java, JavaScript, Elixir, Bash and a ton more I've probably forgotten about, but I'm not a "master" of these languages per se, and there are still things that elude me at their lowest levels because I've not yet needed or felt compelled to dig that deeply (where as I've read the source code for Ruby and I can think in terms of the VM as well as my own code that is running in it).
So, yeah, both. Be a jack of all trades, master of a few.