public static bool CompareVersions(string V1, string V2) { List <int> Version1; List <int> Version2; try { Version1 = V1.Replace("V", "").Split('.').Select(x => Convert.ToInt32(x)).ToList(); Version2 = V2.Replace("V", "").Split('.').Select(x => Convert.ToInt32(x)).ToList(); } catch { return(false); } for (var i = 0; i < Version1.Count(); i++) { if (i >= Version2.Count()) { Version2.Add(0); } if (Version1[i] > Version2[i]) { return(true); } if (Version1[i] < Version2[i]) { return(false); } } return(false); }