How to check if there is a gameobject on a specific gameobject location?

I’m a beginner on unity I’m trying to make a checker game on unity so i already have a board which is made of gameobject cube 2d array and pieces which is made of a list of gameobject and the movement of the pieces (diagonally) is already ok.

So my problem is my piece can move over a occupied tile and it will overlap and also my piece still can’t capture other piece. Please try help me thank you!

I’ll assume that each piece has an x,y values that define it’s position on the board.
In this case you will want to loop through your list of piece and check each one for the x,y coordinate you want to check.
e.g. (without your code, I’m just making up variable names for the following code fragment. This has not been compiled, example only)

foreach(piece in pieceList)
{
      if(piece.x == checkX)
          if(piece.y == checkY)
              foundPiece=piece; //do somthing with the piece you found
}