public ActionResult addstandardpackage1(ICollection SingleStay,ICollection DOUBLESTAY,ICollection TRIBLESTAY,ICollection FAMI
Just convert it to an array:
var s = SingleStay.ToArray();
note that this will consume additional memory though.
Better way would be to get an Array or any other collection-form that supports indexer in the first place.
Yet another way would be to implement it with an index variable:
var s = SingleStay;
int i = 0;
foreach (var cal in s)
{
//do your stuff (Note: if you use 'continue;' here increment i before)
i++;
}