2. sorunuzun cevabı.

Dosya seçip listbox'a atmak için

private void button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog dosyaAc = new OpenFileDialog();
            dosyaAc.Title = "Lutfen bir dosya secin";
            dosyaAc.Filter = "Metin Dosyaları |*.txt";
            dosyaAc.Multiselect=false;
            dosyaAc.ShowDialog();

            StreamReader oku = new StreamReader(dosyaAc.FileName);

            string s;
            while ((s = oku.ReadLine()) != null)
                listBox1.Items.Add(s);
            oku.Close();
        }


Listbox'taki elemanları bir dosyaya yazmak için.

private void button2_Click(object sender, EventArgs e)
        {
            SaveFileDialog kaydet = new SaveFileDialog();
            kaydet.Title = "Dosyaya Yaz";
            kaydet.Filter = "Metin Dosyaları |*.txt";
            kaydet.ShowDialog();

            StreamWriter yaz = new StreamWriter(kaydet.FileName);

            foreach (string eleman in listBox1.Items)
            {
                yaz.WriteLine(eleman);
                
            }
            yaz.Close();

        }