One thing that I think people forget too is that at the time that iMessage came out phone companies were making you pay out of your nose for SMS/MMS messages. Mostly plans here in the US had a limited number of messages per month and if you exceeded that number you would be paying something insane like five cents a message.
iMessage turned that on its head. By auto-detecting if the number you were sending to was another iOS device it would shunt the messages over to the iMessage protocol and not use your precious/expensive few SMS messages. The blue bubble became an indicator originally of whether you were using SMS messages or iMessages. That was important because it told you whether you were using those precious few SMS messages. you had or a tiny fraction of your data plan (or wifi).
As time progressed the blue bubble just became a general indicator that some of the other features that were limited to iMessage at the time would work or not, or if you might be able to use FaceTime to call the other person. Photo sharing, reactions, sending contact info, etc.. all have different experiences between two Apple devices and an Apple device and non-apple device.
RCS came afterwards and was pushed by Google to bring in some of those enhancements and to get the phone companies off of legacy SMS/MMS protocols. I credit them for wanting to have an open standard. But, it's my understanding that the phone companies by and large didn't want to invest in RCS. They weren't making money off of text messages anymore. So Google started standing up its own RCS servers and directing many Android devices to those. Thus RCS is a hodge podge of carrier hosted infrastructure and Google hosted. iMessage is still entirely hosted by Apple.