Evidence from the new post-fourth rail package landscape seems to contradict this. Multiple places in Spain, Italy, France are connected with at least two competing high speed rail operators, to massive success (Paris-Lyon SNCF and Trenitalia, Madrid-Barcelona and Madrid-Seville by Ouigo, AVE, AVLO, Iryo; many routes in Italy by Italo and Trenitalia).
Competition also doesn't really work as soon as your journey isn't large metropolis to large metropolis and involves connecting trains, because a) if a connecting train only runs hourly (or at best half-hourly), it's impossible to have attractive connections from that one train to a multitude of competing operators and b) there are usually ticketing problems which start to matter as soon as one of the trains is delayed and you miss a connection.
Spain has, considering its size, economy and population a relatively generous high speed network (to a large extent financed by EU grants) that by necessity (broad gauage vs. standard gauge) is also completely separate from the legacy network and consequently isn't utilised super-heavily. Plus RENFE already sees its AVEs as a sort of plane on wheels and traditionally has a minimum connection time between trains of 60 mins (!) with only some exceptions, so there is still room for running additional trains and things can't get much worse even with competition and incompatible ticketing between operators on top.
France's and Italy's high speed lines are somewhat more heavily utilised, but you can still get comparatively far by staying exclusively on the high speed network. Plus in France the geography favours the Paris-to-province model, whereas Italy is favourable to a linear arrangement (Turin - Milan - Bologna - Florence - Rome - Naples are all along the same line).
In Germany on the other hand population centers are somewhat more distributed across the country, the high speed lines are of a more fragmentary nature and you have much more running on mixed traffic lines, plus a lot of network sections are effectively at capacity.
The result is that in Germany competition mostly isn't directly about passengers, but rather about train paths, and almost any new non-DB long distance service that has been introduced in recent years (thankfully there weren't that many) caused varying amounts of havoc among local services running along the same sections of line, or in some cases even with DB's existing long distance trains.
Plus it means that e.g. RENFE and SNCF now see each other as enemies, so good luck booking a journey between Spain and France that involves a change of trains in one country or the other.
Exactly, we just end up with a large number of micro-monopolies.
Not even the free market diehards can point out the competition in rail travel.
Even then it doesn't always work out - UK rail services have that system - the infrastructure is maintained by a public body [1], but the operators are private. UK rail is quite expensive, and mediocre in quality compared to our EU counterparts.
One of the issues is that it's basically impossible to have competition on a single rail journey joining two large cities - there's aren't enough tracks to support it without making it unprofitable for operators. So rail networks bid every few years on sections of the rail network, and then have no competition for their term. Again the incentives that make the free market efficient are just not there. A nice video that summarises this mess here: [2]
[1] https://en.wikipedia.org/wiki/Network_Rail
[2] https://www.youtube.com/watch?v=DlTq8DbRs4k&t=1077s