Ogrenciler Class’i:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace SerializationKavrami
{
    //Köseli Parantez Attribute anlamina gelir. Üzerinde bulundugu üyenin (Burada, Class’in) davranisini belirleyen bir DotNet nesnesidir:
    [Serializable]
    public class Ogrenciler
    {
        public int OgrenciNo { get; set; }
        public string Ad { get; set; }
        public string Soyad { get; set; } 
        public int Not { get; set; }
        public int Not2 { get; set; }
    }
}
Form Uygulamamiz:
// Serialization Kavrami | www.yazilimcik.com
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.Serialization.Formatters.Binary;
using System.IO;
using System.Xml.Serialization;
// Serialization Kavrami | www.yazilimcik.com
namespace SerializationKavrami
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void button1_Click(object sender, EventArgs e)
        {
            string deger = "Rize";
            //Bu degeri serilestirelim:
            BinaryFormatter bf = new BinaryFormatter();
            FileStream fs = new FileStream("D:\\BinSeri.txt", FileMode.Create);
            //bf.Serialize(bizden FileStream istedigi için FileStream tanimladik:
            bf.Serialize(fs, deger); //Serilestirdik:
            fs.Close(); //Artik FileStream ’i kapatabiliriz:
            MessageBox.Show("D Sürücüsü’nde ’BinSeri.txt’ Isimli Dosya Basariyla Olusturuldu..!", "Bilgi");
        }
        private void button2_Click(object sender, EventArgs e)
        {
            // D Sürücüsü’nde Olusturdugumuz Dosyanin içerigini Oku:
            BinaryFormatter bf = new BinaryFormatter();
            try
            {
                FileStream fs = new FileStream("D:\\BinSeri.txt", FileMode.Open);
                string deger = (string)bf.Deserialize(fs);
                MessageBox.Show(deger, "Bilgi:");
                fs.Close(); //fs.Close(); yapmazsak RAM Tüketir:
            }
            catch (Exception)
            {
                MessageBox.Show("D Sürücüsü’nde ’BinSeri.txt’ Adinda Bir Dosya Bulunamadi..!\nÖnce Binary Serialization’u Çalistirip Dosya’yi Olusturmalisiniz..!", "Bilgi");
            }
        }
        private void button3_Click(object sender, EventArgs e)
        {
            // Ogrenciler’den Olusan Bir XML Dosyasi Olusturalim:
            XmlSerializer serilestirici = new XmlSerializer(typeof(Ogrenciler));
            FileStream fs = new FileStream("D:\\Seri.XML", FileMode.Create);
            Ogrenciler ogr = new Ogrenciler();
            ogr.Ad = "Ali";
            ogr.OgrenciNo = 1284;
            ogr.Soyad = "AKYILDIRIM";
            ogr.Not = 100;
            serilestirici.Serialize(fs, ogr);
            fs.Close();
            MessageBox.Show("D Sürücüsü’nde ’Seri.XML’ Isimli Dosya Basariyla Olusturuldu..!", "Bilgi");
        }
        private void button4_Click(object sender, EventArgs e)
        {
            XmlSerializer geriSerilestirici = new XmlSerializer(typeof(Ogrenciler));
            try
            {
                FileStream fs = new FileStream("D:\\Seri.XML", FileMode.Open);
                Ogrenciler ogr = (Ogrenciler)geriSerilestirici.Deserialize(fs);
                fs.Close();
                // Ogrenciler’den Olusan XML’den Ad-Soyad Bilgisini Çekelim:
                MessageBox.Show(ogr.Ad + " " + ogr.Soyad, "Bilgi:");
                // Notlari Göstersin Istiyorsak;
                MessageBox.Show(Convert.ToInt32(ogr.Not).ToString(), "Bilgi:");
            }
            catch (Exception)
            {
                MessageBox.Show("D Sürücüsü’nde ’Seri.XML’ Adinda Bir Dosya Bulunamadi..!\nÖnce XML Serialization’u Çalistirip Dosya’yi Olusturmalisiniz..!", "Bilgi");
            }
        }
        private void button1_MouseHover(object sender, EventArgs e)
        {
            lblAciklama.Text = "D Sürücüsüne ’BinSeri.txt’ Adinda Metin Dosyasi Kaydeder.";
        }
        private void button1_MouseLeave(object sender, EventArgs e)
        {
            lblAciklama.Text = string.Empty;
        }
        private void button2_MouseLeave(object sender, EventArgs e)
        {
            lblAciklama.Text = string.Empty;
        }
        private void button2_MouseHover(object sender, EventArgs e)
        {
            lblAciklama.Text = "D Sürücüsü’nden ’BinSeri.txt’ Adindaki Metin Dosyasini Okur.";
        }
        private void button3_MouseHover(object sender, EventArgs e)
        {
            lblAciklama.Text = "D Sürücüsüne ’Seri.XML’ Adinda XML Dosyasi Kaydeder.";
        }
        private void button3_MouseLeave(object sender, EventArgs e)
        {
            lblAciklama.Text = string.Empty;
        }
        private void button4_MouseHover(object sender, EventArgs e)
        {
            lblAciklama.Text = "D Sürücüsü’nden ’Seri.XML’ Adindaki XML Dosyasi’ni Okur.";
        }
        private void button4_MouseLeave(object sender, EventArgs e)
        {
            lblAciklama.Text = string.Empty;
        }
        private void button5_Click(object sender, EventArgs e)
        {
            // Ogrenciler’den Olusan Bir XML Dosyasi Olusturalim:
            XmlSerializer serilestirici = new XmlSerializer(typeof(Ogrenciler));
            FileStream fs = new FileStream("D:\\SeriNOT.XML", FileMode.Create);
            Ogrenciler ogr = new Ogrenciler();
            ogr.Ad = "Ali";
            ogr.OgrenciNo = 1284;
            ogr.Soyad = "AKYILDIRIM";
            ogr.Not = 100;
            ogr.Not2 = 200;
            serilestirici.Serialize(fs, ogr);
            fs.Close();
            MessageBox.Show("D Sürücüsü’nde ’SeriNOT.XML’ Isimli Dosya Basariyla Olusturuldu..!", "Bilgi");
        }
        private void button6_Click(object sender, EventArgs e)
        {
            XmlSerializer geriSerilestirici = new XmlSerializer(typeof(Ogrenciler));
            try
            {
                FileStream fs = new FileStream("D:\\SeriNOT.XML", FileMode.Open);
                Ogrenciler ogr = (Ogrenciler)geriSerilestirici.Deserialize(fs);
                fs.Close();
                // Notlar’in Toplamini Göstersin Istiyorsak;
                int Not1 = Convert.ToInt32(ogr.Not.ToString());
                int Not2 = Convert.ToInt32(ogr.Not2.ToString());
                int toplam = (Not1 + Not2);
                int ortalama = ((Not1 + Not2) / 2);
                MessageBox.Show(toplam.ToString(), "Toplam:"); // Toplamlarini Al:
                MessageBox.Show(ortalama.ToString(), "Ortalama:"); // Ortalamalarini Al:
            }
            catch (Exception)
            {
                MessageBox.Show("D Sürücüsü’nde ’SeriNOT.XML’ Adinda Bir Dosya Bulunamadi..!\nÖnce XML Serialization NOT Ortalama’yi Çalistirip Dosya’yi Olusturmalisiniz..!", "Bilgi");
            }
        }
        private void button5_MouseHover(object sender, EventArgs e)
        {
            lblAciklama.Text = "D Sürücüsüne ’SeriNOT.XML’ Adinda XML Dosyasi Kaydeder.";
        }
        private void button5_MouseLeave(object sender, EventArgs e)
        {
            lblAciklama.Text = string.Empty;
        }
        private void button6_MouseHover(object sender, EventArgs e)
        {
            lblAciklama.Text = "D Sürücüsü’nde ’SeriNOT.XML’ Adindaki XML Dosyasi Okur.";
        }
        private void button6_MouseLeave(object sender, EventArgs e)
        {
            lblAciklama.Text = string.Empty;
        }
    }
}
// Serialization Kavrami | www.yazilimcik.com