Can a Monobehaviour extend a class?

As the title states I am looking to rewrite code here as much as possible and in some cases I want a few different methods and a change in a few variables but I want the bulk of the work to be the same. It took me a while to work out what I wanted to do / how to ask the question but I think the above is the most simple version.

In c# can I create a normal class structure and then get one of my Monobehaviour scripts attached to an object to extend that class and thus get all it’s functionailty? Thanks!

Say you have a class called Agent you can derive from this class and create 2 classes called
AgentFast and AgentSlow.

Obviously you want to attach AgentFast and AgentSlow to a GameObject. Well to do that you can do:

public class Agent : MonoBehaviour{
}

then to derive from it you do

public class AgentFast : Agent {
}

public class AgentSlow : Agent {
}

And you get full access to the MonoBehaviour in the base class.