In a saucepan whisk all ingredients together until they are well combined.
Bring to a boil, whisking constantly, and then reduce to a simmer and let cook, stirring occasionally for 20 minutes.
Remove from heat and it's ready to be used. If you are making it ahead of time let it cool before placing it in a sealed container in the refrigerator.
Note: I like my BBQ sauce with a little kick so I add the cayenne pepper. Feel free to leave that out, or substitute with a chipotle chili powder or regular chili powder, if you like your sauce less spicy.