The ; is reserved and can be used by servers for a type of data separation, as in your example clearly happens, while the & is usually used for separation of GET parameters. The ; may however have another use/meaning with another server, for example may have systems that use ; inside the back of & to separate several parts of the answer.
In practice it has relatively few standard server software, and within each of these it can have a relatively uniform treatment of these symbols. However, each yes server has every right to use these symbols as it best serves the running application, so there is no guarantee that & and ; will always be equivalent.
In your case you use C# and the default API seems to treat everything the same. But because in C# you can create your own style of handling everything, even here it’s 100% guaranteed. That’s just because it’s preset like this.
More relevant information: https://stackoverflow.com/questions/2163803/what-is-the-semicolon-reserved-for-in-urls
In the title "web Forms" there is a basic explanation. https://en.wikipedia.org/wiki/Query_string
– Bacco
It is more common to see using & than ;
– PauloHDSousa