ISIS and OSPF belongs to the same routing protocol family Link State, but if you study the two routing protocols, you will find several differences, in this article you will get the answer about the differences between ISIS and OSPF.
OSPF has a rigid concept of backbone, the area 0 must be the backbone.
With ISIS any area can be a backbone, a backbone area is a collection of a L2 routers.
OSPF has and handles many LSAs to describe intra-area, inter-area, external, and nssa-external informations and needs more memory to store the LSDB.
ISIS has only two LSPs LSP-1 and LSP-2 (equivalent to LSA in OSPF), so the LSDP is significantly reduced; the memory is saved, especially on the ABR.
OSPF is more flexible when calculating a cost of the link based on the speed or bandwitdh.
ISIS has a static metric (default 10) for all link regardless of the speed, this can cause a suboptimal routing.
ISIS introduces and activates automatically the concept of Totally Stubby area when there are inter-area informations. This can cause suboptimal routing.
In OSPF, the administrator must configure an area as a Totally Stubby area depending the needs.
ISIS is more secure because it runs on data link layer. Not possible to attack the IGP using IP as with OSPF.
OSPF supports NBMA and point-to-multipoint links, whereas IS-IS does not support.
OSPF elects a DR and BDR, whereas IS-IS elects only a single DR called DIS.
An OSPF router can belong to multiple areas so mismatch of area id prevent the neighbor relationship whereas an IS-IS router can belong to only one area.
There is no concept of a virtual link on ISIS unlike with OSPF, so in ISIS there no issues caused by the partitionned of the backbone area.