Static collisions

I use no physics in my project but I do use colliders on my objects to know when they are clicked and that part is working.

What I need is to know if 2 object are colliding without starting physics simulations and so. I know the specific 2 objects I want to test for collision at a specific time - I don’t need to know arbitrary collisions.

public bool AreColliding(GameObject a, GameObject b)
{
    // do your thing here
}

I use C#. How do I implement this?

You use the Collider.OnCollisionEnter method (or the MonoBehaviour.OnCollisionEnter, or the Rigidbody.OnCollisionEnter, or the OnCollisionStay() or OnCollisionExit() methods...)

Like it or not, collision detection is done using the physics engine. Don't worry, you won't go into simulation stuff if you don't need to, and it's not that complicated.

The basic idea is that you put a Rigidbody component on one of the objects that you want to check for collisions, put colliders on both objects, and attach a script that has the OnCollisionEnter() method in it to one of them. The collision event will trigger the OnCollisionEnter() method, and there you can do whatever you want with it... There are examples in the documentation, and you can search for more examples here and in the forum.

Notice that there are also trigger colliders. The difference between the two is that trigger colliders allow objects to go through them (think about checking if an object entered some area of your level) and that regular collisions use the OnCollisionEnter() methods, while trigger colliders trigger the OnTriggerEnter() methods. Read up on Unity's Physics for more info.