EventList a generic list implementation that raises events when items are added and removed
Bug  


public void Insert(int index, T item)
{
    _list.Insert(index, item);
    RaiseEvent(ItemRemoved, item, index);
}  



I don't think that you want to raise an ItemRemoved event in the case of inserting an item.  



In general I like your implementation. It is leightweight and is doing exactly what it should.  

But for sure I have something to critizise:  


The name EventList&lt;T&gt; which reads like a list of events instead of a list with events. Because there is already a ObservableCollection&lt;T&gt; maybe an ObservableList&lt;T&gt; would be a better name.  
You implement IList&lt;T&gt; but have the underlaying list as a List&lt;T&gt; instead of an IList&lt;T&gt; like private readonly IList&lt;T&gt; _list;.  
The RemoveAt() could be simplified by calling the Remove() method like so  

public void RemoveAt(int index)
{
    Remove(_list[index]);
}  


 See @RomanReiner's answer here
IMO the raising of multiple ItemRemoved events inside the Clear() method isn't that good because you are raising the event before the item is removed. You should either have an additional event ItemsCleared or you should raise the ItemRemoved events after the clearing of that list.