What exactly you try to "remote control"?
In some situations Control Surface approach is better, but not in all. Remote control is better when:
1) you re-assign it all the time (but then why you need specific range?)
2) you assign it to something not available for Control Surfaces (but almost all such parameters are switches, I mean not continuous)
3) you want per project assignment
Control Surfaces approach is better in almost all other situations (sure I mean my AZ Controller, not stock plug-ins...). The assignment is not project dependent (but there can be several "presets"), you can make control combinations (use lowest keyboard keys for controlled parameter switching), external tools/daemons are not needed, etc.