By using Angular/React with API on the server-side:
- you eliminate the process of generating HTML on server-side and you save CPU
- API produces a small payload (JSON) and Razor (HTML) of course would be much larger in size, the constant full page reloads, and postback round trip, so API and SPA save bandwidth
- API and spa could have different versioning, scaling and deployment scenarios
- By using API you can support mobile app too and if you start with Razor you may need API in future
But by using Angular/React, you should be worried about clients:
- client must enable javascript
- client must have modern browsers
- client must have enough powerful hardware
- SEO