There are two things...
One is your mixing different approaches for URL creation... There is the old-and-good HTTP URL ENCODING with the
http://site-address/page.html?param1=value1¶m2=value2. And there is the MVC ROUTING which uses the form of
http://site-address/page/value1/value2.
You can not mix them and expect the correct behavior...
The second one is a common mistake. We all overlook the documentation about UrlHelper.Action, that explains that the function will create an URL according to the matching mapping from the route table...
In your case 'Index' omitted as it is the default action, than id added as it is requested but not optional ('English' isn't there for the same reason as 'Index')... then comes your part...
http://localhost:17671
Survey
ab7f6bda-9f5e-44d7-9bd2-63c24e6b6adb
?languageName=Spanish&id=ab7f6bda-9f5e-44d7-9bd2-63c24e6b6adb
So - you have two options, one to use the id value you already have from the model or use an another (in your case it seems to be the first)...
location href = "@Url.Action("Index", "Survey")" + "/" + selectedValue"
Or
location.href = "@Url.Action("Index", "Survey", new { id = UrlParameter.Optional })" + "/" + "@Model.CampaignGuid" + "/" + selectedValue