malicious attack could lead to accidents and, in worst-case scenarios, endanger human lives. The trust problem could be solved by introducing a third-party authority that validates every transaction between devices, but not only does this introduce a single point of failure, it also decreases the throughput of operations, which is not beneficial in IoV scenarios. The smart city is a concept that aims at utilizing various types of technologies together, at the same time, to manage the city resources (e.g., water, energy, gas, transportation, network access, among others) to improve the lives of the population of that city and the administration of such resources [5]. The Internet of Things (IoT) is the major construction block of this concept. However, IoV working as an extension of the IoT baseline can boost the improvements that are already expected from smart cities, especially with unmanned aerial vehicles (UAV), which bring to the table new application options and opens doors to new solutions for existing problems. The Blockchain, firstly presented as the underlying technology of Bitcoin [6], is a distributed ledger (or database) of transactions between nodes in a network that ensures various security and privacy properties, such as data authentication, data non-repudiation, privacy, traceability, and immutability, through the implementation of cryptography, digital signatures and consensus protocols. Through these characteristics, and later the implementation of Smart Contracts, Blockchain can solve decentralized networks' trust problem without a third-party authority, removing the single point of failure problem. Blockchain also provides the benefit of interoperability since it is deployed on top of an overlay Peer-to-Peer (P2P) network. The sum of all these assets makes Blockchain an ideal technology to solve the security and privacy problems of IoV. Even with the great benefits Blockchain presents, there is a problem with the underlying technologies and their effects on IoV and its restrictions. Typical Blockchain implementations use consensus protocols that propose a hard-to-solve problem that requires a lot of computational power and energy consumption. That proves to be detrimental to resource-constrained devices (i.e., sensors) that proliferate in IoV networks. While there are already published surveys of this topic, such as [PERSON] et al. [2] and [PERSON] et al. [7], most of the existing surveys only focus on one technology (either IoV or Blockchain), and the papers that mention both foci, mostly, on presenting their project (which limits the expression of detail, since the authors will only write about what they require to justify their decisions), and not to present in-depth, introductory research on both subjects. This article reviews IoV and Blockchain, presenting them in a welcoming way for newcomers, early developers, and practitioners. It explains how these technologies work, how they come together, and the tools that are most popular to help in creating new solutions while going in-depth on these subjects and inciting readers to start developing and learning more about the subject. We also discuss smart cities and how UAV-assisted IoV and Blockchain can help to bring this concept to life and improve the results obtained from their implementation. Our contributions are as follows:  
* We review the IoV concept, its architectures, benefits, and flaws, how applications are grouped for development in this technology, quickly introducing the rising Social Internet of Vehicles, and presenting the main challenges and problems to be solved. * We present the concept of UAV and smart cities and how UAV-assisted IoV can help realize the smart cities concept and the underlying technologies it requires. * We review the Blockchain concept, its origins, and the technologies behind it that give it its properties and how they do it.