Array of objects or Dictionaries

How can I create an array of objects or dictionary items? I want to create spell items, which each item having details about the spell, these could be a object or dictionary (not sure which would be best), and then I would want these store in an array, but I’m not sure how to do that.

I’m using C#.

I thought I could use something like this

List<Dictionary> spellsArray = new List<Dictionary>();

But that gives a compile error.

Create a custom class that holds the spell data:

public class Spell {
     public string name = "My Spell";
     publich Dictionary<??,??> spellDict = new Dictionary<??,??>();
}

public Spell[] spellArray = new Spell[10];