By Road:-
You can get luxury bus service from New Delhi or near by cities to Haridwar / Rishikesh or Dehradun. After reaching Dehradun you have three options, first is to book your personal cab which will take you to Sonprayag and will take you back. As this cab will always stay with you so it would be bit costly. Next option is to take a share cab that will only drop you to Sonprayag. This will be convenient as well as economical. Third option is to take a bus from haridwar to Sonprayag or guptkashi directly. This will not be so comfortable but it would be in your budget.