LCD library

Does the LCD library allows me to use the 8 Data pins or the last 4 data pins Only (D4-D7)
Or i can use any 4 data pins or i can use 3 or 6 data pins in order what are all the options i have ?

which LCD library?

// include the library code:
#include <LiquidCrystal.h>

// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  lcd.print("hello, world!");
}

LiquidCrystal.h this library

Does the LCD library allows me to use the 8 Data pins or the last 4 data pins Only (D4-D7)

the LiquidCrystal Library page says it "works in either 4- or 8-bit mode"

Does it allow me to use from D0 to D3 or any 4 bits in order ?

Only d4-d7.

From hd44780 datasheet page 22:
The HD44780U can send data in either two 4-bit operations or one 8-bit operation, thus allowing interfacing with 4- or 8-bit MPUs.
• For 4-bit interface data, only four bus lines (DB4 to DB7) are used for transfer. Bus lines DB0 to DB3 are disabled. The data transfer between the HD44780U and the MPU is completed after the 4-bit data has been transferred twice. As for the order of data transfer, the four high order bits (for 8-bit operation, DB4 to DB7) are transferred before the four low order bits (for 8-bit operation, DB0 to DB3).
The busy flag must be checked (one instruction) after the 4-bit data has been transferred twice. Two more 4-bit operations then transfer the busy flag and address counter data.
• For 8-bit interface data, all eight bus lines (DB0 to DB7) are used.

HassanBosha20:
Does it allow me to use from D0 to D3 or any 4 bits in order ?

i believe you can specify any 4 arduino pins (see LiquidCrystal - Arduino Reference)