Preheat the oven to 325 degrees F.
Grease and flour two, 8-inch round cake pans and set aside.
Make sure to set the cold ingredients out, so they can come closer to room temperature before making the batter. This will keep the batter from clumping up and will help it mix better.
In a medium-sized bowl, combine the flour, baking soda, baking powder, cocoa powder and salt. Whisk well and set aside.
In another bowl, add the buttermilk, sour cream, vinegar, vanilla, oil and gel food coloring. Whisk well and set aside.
In a large mixing bowl, add the room-temperature butter and the sugar and mix with an electric mixer on medium-high speed for several minutes until light and fluffy.
Add the eggs one at a time, and mix on medium speed for just 20 seconds after adding each egg.
Scrape down the sides and bottom of the bowl and mix again on medium, only until everything is well incorporated.
Alternately add in the dry mixture and the liquid mixture to the butter mixture, starting and ending with the dry mixture.(Add in ⅓ of the dry mixture and mix on medium just until combined. Add in ½ the liquid mixture, mixing on medium only until combined. Add in another ⅓ of the dry mixture, mixing on medium only until combined. Add in the last of the liquid mixture, mixing on medium only until combined, then the last of the dry mixture and mixing on medium until combined.)Be very careful only to mix until just combined. Mixing too long and at too high of a speed can cause the cake to come out dense, rubbery or to fall in the middle. Scrape down the sides of the bowl and mix again only for 7-10 seconds or so. The cake batter should be thick and fluffy at this point.
Add the coarsely chopped Oreos and mix in by hand only until well combined.
Pour the batter into the two prepared, 8-inch round cake pans, smooth the batter evenly and bake at 325 degrees F on the middle rack for approximately 50-60 minutes. Ovens vary, so start checking at about 45 minutes.
The cake layers are fully baked when a toothpick inserted into the center of each layer comes out with a few moist crumbs on it or clean, but no raw batter. The sides of the cake layers will also slightly pull away from the pans.
Remove the cake layers from the oven and place them on a wire rack, still inside the pans, for about 15 minutes. The cake layers may flatten out a bit as they cool.
After 15 minutes turn the cake layers out of the pans and set them onto the cooling racks and allow them to cool completely before adding filling and frosting.
Once cooled, add one layer on a cake plate and add Oreo cream cheese frosting. Add the second layer of cake and cover the entire cake with the Oreo cream cheese frosting.
Feel free to use vanilla buttercream with added crushed Oreos if you don't like cream cheese frosting.
See the notes section for best ways to store this, serve it and for more questions.