Over the past couple of years the MTA's real-time data has gotten much, much better. Most stations have screens showing when the next train(s) are arriving, including signs outside the station near entrances. (now are they always working, that's a different question).
I live in Brooklyn and my local train (C) is one of the worst for reliability. It comes every 6-15 minutes during commutes, so it's important to know exactly when the next train is coming so you can hurry (or chill, if you have already missed the train!). https://mta.info is the "horse's mouth" and, while it's not a great UX, I much prefer it to going to any third-party repackager's app or site.
Just for finding your way around the city, no need to look further than Google Maps on mobile, which gives clear and reliable subway directions, including scheduled service interruptions. The only asterisk on that is that temporary service interruptions are not always taken into account for finding directions, but mta.info will always set you straight.
The data is very accurate. I think they take the data that the transit agencies publish then layer on their own algorithms. Whatever they do, the predictions of when the bus will show up are really, really good.
The UI changed a while back and I really, really hate the UI. It feels like it would be more at home on Android, but I'm not an Android user so it just feels 'wrong'.
I really hate the Transit Royale thing, but only because my city decided that paying $75k[0] to make transit information more accessible to everyone wasn't worth it. They did, however, spend $70k[1] to do a podcast series about zoning. To be clear, the folks behind Transit deserve to get paid, this is a dumb decision on the part of the City.
You can use Transit App in many cities around the world other than New York! It's a great piece of software, I rely on it heavily when navigating unfamiliar transit systems while traveling.
Never used transit -- but may check it out next time I'm in NYC.