>>302
コードが短ければいいってものじゃないと思うけど
>>300みたいなのってパッと見てわかりやすいとは思わないわ
あまりにも抽象的過ぎて

これもさ、例えばlistを別のクラス、プロジェクトで利用したいってなったとき
t.Item1の見た目でどんな意味の値が入っているかわからないじゃない?
一つのメソッド内でしか使わない使い捨てならいいけどさ

public class Month
{
public int Name{get;set;}
public int Days{get;set;}
}

foreach (var mon in months)
{
Console.WriteLine("日数:{0} 月:{1}", mon.Days, mon.Name);
}
コードは長くなるけど、このほうがわかりやすいでしょ?