Вызов reader.Read()
продвигает одну строку, поэтому при первом вызове перед цикл while уже попадает в первую строку, но затем вы вызываете его снова в условии while, поэтому он продвигается во второй строке просто удалите вызов до условия.
con = new SqlConnection(cs.connetionString);
con.Open();
Sql = "SELECT * FROM ItemRate";
command = new SqlCommand(Sql, con);
SqlDataReader reader = command.ExecuteReader();
// remove this line
// reader.Read();
while (reader.Read())
{
string cat = reader["RateOfInt"].ToString();
comboBox4.Items.Add(cat);
}
Редактировать: вот пример из Документов