Ne kadar detaylı bir bilgiye ihtiyacın var bilmiyorum fakat basitçe açıklamaya çalışayım.

Procedural Programming: Prosedür bazlı programlamadır. Programı oluştururken nesnelere göre değil adımlara göre kodlamadır. Yani kodun yukarıdan aşağıya akışı gibidir, programın elemanlara, fonksiyonlara, rutinlere ve veri yapılarına ayrılmasıdır. Debug etmesi daha kolaydır. Çünkü genellikle tek dosya üzerinde olur. Buna en güzel örnek c ile yazılmış bir hello world olabilir. Kod yukarıdan başlar ve aşağıya kadar gider. Kod içerisinde tanımlanan bazı değişkenlerin veya veri yapılarının farklı yerlerde kullanılması uğraştırıcıdır. Yani nesne gibi değildir, bir kere yarat her yerde kullan mantığı yoktur. Kodu takip etmesi ve debug etmesi çok kolaydır.

Object Oriented Programming:

Nesneye dayalı programlama (object + class + inheritance). Herşey nesneler üzerine tanımlanır. Bir nesne üzerinden farklı nesneler türeyebilir ve birbirlerinin özelliklerini, fonksiyonlarını kullanabilir. Tamamen gerçek hayatla aynıdır.
Bir kere tanımlanır ve her yerde kullanılabilir. Herşey nesne üzerine tanımlanır, fonksiyonlar, veri tipleri, özellikler vs. Az kod, çok iş. Kod yazmayı kolaylaştırmayı ve anlaşılmasını kolay hale getirmeyi hedefler.

Structural Programming:
Yapısal Programlama. Kodların yapısal(mantıksal) bloklara ayrılmasıdır. Uzun ve karmaşık kodların bloklara ayrılarak daha kolay anlaşılmasını hedefler.

Object based programming:
Yine program nesneler ile oluşturulur fakat OOP'deki gibi kalıtım(inheritance) ve polymorphism(çok biçimlilik) desteklemez.

Event-Driven Programming:
Bir olaya dayalı programlama. Programın akışı bir olaya göre devam eder. Bu klavyeden bir girdi, kullanıcı tıklaması gibi birşey olabilir. Bir kayıt formu düşünün, kullanıcı doldurup gönder butonuna basmadan program birşey yapamaz. Bu en temel event driven programming örneğidir.