It was a mixed experience. When I migrated to expo two years ago, many problems were solved but not all.
But I still encounters bugs and problems with many common dependencies. It is not uncommon to have bugs on certain Android brands, with the community on github reporting the bug but waiting months for it to be fixed.
iOS is by far better and more stable than Android.
Performance is great on iOS, but less great on Android.
Our apps are animation heavy using react-native-reanimated and react-native-skia. Everything went perfect on iOS but we had to remove some animations or simplify them on Android.
Upgrading your dependencies every four months will probably break something somewhere : deep links stop working, some animations stop working, or maybe it's another dependency from the JS world. Sometime the fix is easy, other time an issue with the regression can be found on Github, other time we have no data.
Overall I'd say react-native is perfectly servicable and is easy to learn for anyone, which is a big plus. I'd recommend react-native because it is easy, have a big JS ecosystem, but I am now on the Flutter side.