Are there any rules or guidelines as to when to pronounce 行く as いく or ゆく?
I looked it up on jisho.org, and the two pronunciations have the exact same definition. I tend to hear ゆく more often in songs, but that is just anecdotal.
The explanation in デジタル大辞泉 is:
My translation / synopsis is as follows:
いく has been seen from ancient times but from the Heian period both have been in use. いく has almost exactly the same meaning as ゆく but in olden times, ゆく was used more widely: Putting the use of double entendres and word play based on 生く aside, then the use of 行く in Japanese poetry (waka/tanka) or symbolism can almost always read as ゆく. As a result, when expressions such as 「過ぎ行く」「散り行く」 are used stylistically in written language they are normally read as ゆく. However forms such as ゆきて have stopped being used in favour of forms derived from いく such as いって and いった.
They both mean the same of course, and there is plenty of info you can find explaining that ゆく is an older version. In addition, I have found that while ゆく tends to be a somewhat casual version of いく. いく is easier to pronounce than ゆく. Also, FWIW, I think いく is used more often than ゆく in conversation.
ゆく is both more formal and more poetic that いく, so you'll hear ゆく in public announcements, song lyrics, formal letters. In every day life, いく is what you'll hear.
These kinds of couplets are very common in Japanese, and you'll frequently find near-synonyms like 参加する・来る / 逮捕【たいほ】する・捕【つか】まえる / 拝見【はいけん】する・見る / 消失【しょうしつ】する・消える or 包含【ほうがん】する・含める. The general trend behind all of this is that Sino-Japanese words are usually more literary and formal than their native counterparts. ゆく, as a mostly obsolete form of いく, a retains the sense of a literary tradition, like most Sino-Japanese words, that for its difficulty was prestigious in earlier Japanese history, and still carries a degree of prestige today.
As you can see in Earthliŋ's comment, よい and いい are also good examples of this principle.