update: Explanation of DR/BDR mechanism in OSPF
First, I would recommend first understanding how OSPF works on point-to-point links, i.e., on the links that can connect only two routers. On such links there is no DR/BDR mechanism. DR/DBR mechanism was originally an optimization for a special case, and it just happened that each link now can be this special case.
Second,
only DR or BDR talks to the ospf speakers
no, this is not exactly true. DR and BDR talk to other speakers on the same link (interface) in question. This only makes sense, if you consider that a link can connect more than two routers (see below). Every router still sends and receives LSAs on all its another interfaces. DR/BDR mechanism changes how this LSA is propagated on this particular link.
Third, the issue with Ethernet, is that Ethernet a broadcast multi-access link, i.e., a link that connects more than two routers and is capable of sending packet to more than one receiver. Ethernet used to be a shared bus, and now it is kinda a network of switches that emulate a shared bus. Since you can't tell by the cable, whether more than one router is on the link, OSPF per default works in such mode. As @RonMaupin said, if you know that you only have a cable, you can turn off this mode, and then you would not need DR/BDR mechanims. See this question for details.
The general idea:
The idea of DR/BDR mode is (was?, not an issue now) on a very high level to reduce traffic on the link, i.e., Ethernet segment.
Technically broadcast multiaccess link means that each router can talk to any other router (i.e., the topology is full mesh). In a full mesh each router would have to send LSAs to each other router on the link, which is suboptimal, [and since it is a broadcast link also unnecessary]. In order to avoid this, there is an optimization which makes a shared link a star instead of full mesh.
One router is selected as DR. When another router on this link receives an LSA from an interface not on this link, it sends this LSA to DR. DR then sends this LSA to each other router on this link. Just to clarify, each router that receives an LSA on such link, then sends it on each of its other interfaces.
Now, LSAs should be transmitted reliably and BDR is just a backup, in case DR fails. BDR receives the same LSAs and ACKs and silently collects them.
some comments to Zac67's answer.
I would have expected that router A won't see routes on router C but obviously it still does receive that route. What is the explanation for that?
The role of routing (aka layer 3) is to connect different subnets (layer 2) with each other. The role of routers is to forward traffic between different subnets. The purpose of any routing protocol including OSPF is that every router learns path to every other router (well actually end-system) in the network. In your diagram the purpose of a routing protocol is that A learns how to reach C and vice versa.
If A knew how to reach C (e.g., because they are on the same subnet) then you would not need OSPF or any routing protocol. Note that in your diagram, if B is a router then having A and C on the same subnet is a misconfiguration. They cannot be on the same subnet, because they cannot reach each other using layer 2 mechanism.
Is it that each subnet has only 2 participants which are automatically DR and BDR which would then pass all the (learned) routes to the other connected subnets or what is the exact reason why it's ever working?
yes, with two routers on a link, one will be DR/BDR, but this is actually not relevant. DR/BDR is there because Ethernet can connect more than two routers. You could have a point-to-point link. But these are OSPF internals that are not relevant for the concept.
Is it that each subnet has only 2 participants which are automatically DR and BDR which would then pass all the (learned) routes to the other connected subnets or what is the exact reason why it's ever working?
again, this is exactly what a routing protocol does.
Is there any construction where such a topology would not work at all (where all routers are in the same area, but have different subnets and wouldn't hold every route from all the routers in the same area)? I can't find that information...
if your network is configured correctly, and there is a physical working path, then NO.
Areas do not change that fact. Areas change how exactly routes from other routers are learned, but the result should be the same - each router will (eventually, see [1]) know path every other router/end system in the network. Areas are also OSPF internals that are not relevant.
Next question that arises is if that setup is significantly slower: Suppose router C goes down, now router B has to remove those routes and then pass that information to A, I suppose that takes much more time as if all devices where neighbors (please suppose that you'd have not only those 3 but say 20 devices where all of them are connected in the same fashion, A to B, B to C, C to D, etc.)?
How slow it goes mainly depends on how long it takes for neighbors to detect that C did go down. If there is some physical layer indication that the line is down, then other routers can start converging, which means propagating new routes, immediately. If not, then HELLO protocol should be able to detect that C is not responding. In this case you would have to check hello interval/router dead interval on your router and compare it to the one of your layer 2 protocol (e.g., RSTP).
Now, how fast routers recalculate new path depends on the exact mechanics of the routing protocol and on the performance of the routers. My gut tells that OSPF is capable of converging faster then RSTP and definitely faster then STP.
[1] well, it may take some time to calculate routes, and during this time routes may not be available